Commit Graph

2613 Commits

Author SHA1 Message Date
Dustin Carlino
f28029c69f dont crash when peds are waiting for a bus that isnt spawned, and dont walk in place while waiting 2020-01-13 09:21:23 -08:00
Dustin Carlino
649d0ddbda always draw brake light with turn signals 2020-01-13 09:08:51 -08:00
Dustin Carlino
f78bc6a5ef simplify top-center panel in challenge mode 2020-01-12 10:53:32 -08:00
Dustin Carlino
ec1e3f435b make it easy to dump raw events for debugging on windows/mac [rebuild] 2020-01-12 09:35:38 -08:00
Dustin Carlino
de1c481c93 svg parking icons 2020-01-12 09:20:54 -08:00
Dustin Carlino
5f4e2bd81e use edit map icon 2020-01-11 20:40:44 -06:00
Dustin Carlino
e207500877 move some controls above minimap viz panel 2020-01-11 20:27:25 -06:00
Dustin Carlino
f1b42ecdb9 consolidate composite layouting... just need to know alignment and percentage of screen 2020-01-11 14:59:27 -06:00
Dustin Carlino
0023002935 proof of concept: max size for composites! 2020-01-11 14:32:41 -06:00
Dustin Carlino
abe89d65f8 center popup menus 2020-01-11 14:02:47 -06:00
Dustin Carlino
60c20230ec align X button to the right. flexbox is so unintuitive. 2020-01-11 13:54:42 -06:00
Dustin Carlino
f4f85febd7 choose heatmap via yuwen's icons. layouting is funky, but when is it
not?
2020-01-11 13:42:26 -06:00
Dustin Carlino
511c451e8a totally ditch the fixed Composite positioning 2020-01-10 12:01:05 -06:00
Dustin Carlino
52e08238e5 use relative positioning for the minimap and legend. (when starting maximized, window size changes a few times, really exposing how silly exact positioning is) 2020-01-10 11:59:15 -06:00
Dustin Carlino
e2de6b24d9 start windows maximized 2020-01-10 11:23:52 -06:00
Dustin Carlino
f7c2911671 [rebuild] to test windows info panel click bug 2020-01-10 10:01:26 -06:00
Dustin Carlino
a6edc70d3c input validation for naming edits 2020-01-10 09:34:23 -06:00
Dustin Carlino
bc8eb8d6e0 ahhh, fix bug that made crosswalks not conflict with turns 2020-01-10 09:18:21 -06:00
Dustin Carlino
f12e231966 jump to editing traffic signal directly from sandbox mode 2020-01-09 19:13:06 -06:00
Dustin Carlino
11ece6b188 no more log scroller. have an OK button 2020-01-09 17:54:07 -06:00
Dustin Carlino
7b4c7306e7 dont allow 0s phases 2020-01-09 17:38:02 -06:00
Dustin Carlino
4115d26b6b woops, adding missing turns to traffic sig needs to prioritize crosswalks 2020-01-09 17:23:00 -06:00
Dustin Carlino
d871e3b447 loading screen for applying map edits 2020-01-09 17:19:35 -06:00
Dustin Carlino
bc95319859 hide traffic sig details when turn cycling in sandbox mode 2020-01-09 17:17:24 -06:00
Dustin Carlino
f6274e566d OSD even for pregame stuff 2020-01-09 15:50:00 -06:00
Dustin Carlino
de21ee0727 show keybindings in info panel 2020-01-09 15:43:35 -06:00
Dustin Carlino
0a5d945f20 avoid some bugs if we simulate way past 24 hours 2020-01-09 12:01:12 -06:00
Dustin Carlino
53f33a31e4 hide IDs unless in dev mode 2020-01-09 11:50:56 -06:00
Dustin Carlino
c049221743 add a timeline showing bus location 2020-01-08 13:59:01 -06:00
Dustin Carlino
0ecfb1be20 make the passenger delay panel into a Composite, and click stops to warp to them 2020-01-08 13:17:10 -06:00
Dustin Carlino
6203ff70f0 make it easier to find all bus stops 2020-01-08 11:23:00 -06:00
Dustin Carlino
45c7ee08e1 remove speed slider, use the 3 settings instead 2020-01-08 10:55:34 -06:00
Dustin Carlino
5ae2557b2c adjusting some speed panel buttons. the new triangles dont do anything
yet.
2020-01-07 12:52:56 -06:00
Dustin Carlino
24565cfe49 refactoring composite builder API 2020-01-07 12:08:39 -06:00
Dustin Carlino
0ad371525b after clicking a button, figure out if we're hovering over any new buttons that're created. kind of an invasive refactor to get to this, but worth it. 2020-01-07 11:43:34 -06:00
Dustin Carlino
eb9050777b hide button for heatmaps 2020-01-07 11:07:34 -06:00
Dustin Carlino
0439e05e4e start a panel for showing live passenger delay 2020-01-04 10:52:25 -06:00
Dustin Carlino
05888357ea generalize that into a prebaked analytics thing. undo the previous
thing. (i forgot even live stuff should be in analytics)
2020-01-04 10:30:57 -06:00
Dustin Carlino
fd2fbf6a5e info panel for bus stop has number of people waiting currently, time spent waiting 2020-01-04 10:11:22 -06:00
Dustin Carlino
9aac76ee39 draw less terrible bus stops 2020-01-04 09:50:03 -06:00
Dustin Carlino
eeb0c653c4 grab the right sunset/sunrise icons 2020-01-03 11:55:19 -06:00
Dustin Carlino
3208636c29 move legend for colorer 2020-01-03 10:58:07 -06:00
Dustin Carlino
35357534aa draw heatmap on the minimap 2020-01-03 10:52:09 -06:00
Dustin Carlino
e8ea180f8a clean up places using Colorer that were drawing things themselves 2020-01-03 10:44:28 -06:00
Dustin Carlino
a2e749c30c merge RoadColorer and ObjectColorer 2020-01-03 10:30:02 -06:00
Dustin Carlino
a70cea84b5 make road colorer draw on top of original stuff when zoomed in, with
less opacity. dont use override_colors.
2020-01-03 10:15:50 -06:00
Dustin Carlino
852ee69430 buttons to zoom in/out fully. poor animation for now. 2020-01-02 12:21:47 -06:00
Dustin Carlino
d21676ea11 make the zoom indicators clickable 2020-01-02 12:11:13 -06:00
Dustin Carlino
3bd4a7220d make popup menus use scrolling 2020-01-02 11:35:41 -06:00
Dustin Carlino
c9b8438bd5 yuwen's magical new heatmap colors 2020-01-02 10:41:43 -06:00
Dustin Carlino
642084c595 rotate walk icons 2020-01-02 10:24:12 -06:00
Dustin Carlino
1ad3dfd634 always draw crosswalks, draw walk / dont walk icons 2020-01-01 13:47:55 -06:00
Dustin Carlino
c925eff8b9 new traffic signal arrow styles and phase spinner 2020-01-01 12:51:40 -06:00
Dustin Carlino
87a2c82ba6 fixed number of zoom levels for the minimap 2019-12-30 11:10:32 -06:00
Dustin Carlino
74de79e0dd make an iterator to determine when we're on the last item. use to refactor a few places that have to do this. there are more though. 2019-12-29 11:20:05 -06:00
Dustin Carlino
7cd7eec5cd stop embedding TimePanel inside SpeedPanel (even though they always go together) 2019-12-29 10:55:34 -06:00
Dustin Carlino
4329f55e97 zoom controls for minimap 2019-12-29 10:44:29 -06:00
Dustin Carlino
863e239c98 turning histogram into a proper ManagedWidget 2019-12-29 10:16:38 -06:00
Dustin Carlino
1de77f0d3b prevent a crash spawning agents on a synthetic map [rebuild] 2019-12-28 11:02:27 -06:00
Dustin Carlino
5b6e7a6f54 jump straight to a challenge from command line for fast development. fixes #31 2019-12-26 18:53:44 -06:00
Dustin Carlino
71553cbc70 make time jump textbox start with the current time, so the format is a bit more clear. addresses #24 2019-12-26 18:30:51 -06:00
Dustin Carlino
227c20bd38 use proper paths in game's colorscheme-scraping build script, so things work on windows. should fix #33. try re-enabling windows build to confirm. [rebuild] 2019-12-26 17:52:25 -06:00
Dustin Carlino
38bc88d54b make the pan buttons do something 2019-12-25 12:35:49 -08:00
Dustin Carlino
517a35775f adding pan buttons to minimap. they dont do anything yet, but the hard
part was positioning the minimap using all the new layouting
2019-12-25 12:01:51 -08:00
Dustin Carlino
e8c9cfd2cf support command stack and undo within traffic sig ed 2019-12-25 11:22:31 -08:00
Dustin Carlino
b81d66dcc3 real time/speed controls in traffic sig preview, with a different
meaning for reset
2019-12-25 10:58:12 -08:00
Dustin Carlino
3ddae0517e put action buttons in the info panel directly; scrap the modal menu 2019-12-24 15:50:13 -08:00
Dustin Carlino
bb55b2158f start sandbox mode with agents from main screen 2019-12-24 15:40:16 -08:00
Dustin Carlino
fbbb59f6a5 add option to preview traffic signal edits with the live sim results 2019-12-24 14:34:50 -08:00
Dustin Carlino
ebd405e2ef make the scrollbar slider work! also, stop wasting github resources 2019-12-23 15:00:22 -08:00
Dustin Carlino
21b8f41a59 change API of Composite. we need to own all the sliders after all. prep
for including a scrollbar.
2019-12-23 14:33:43 -08:00
Dustin Carlino
3c0b88dfdf rewrite slider a bit. support vertical scrolling (untested). fix some
bugs in speed panel introduced a while ago. keep tuning github workflow.
2019-12-23 13:56:29 -08:00
Dustin Carlino
faa7de4d96 argh wrong directory 2019-12-23 11:54:41 -08:00
Dustin Carlino
b45bfc392c try out a github workflow for building particularly on mac. forked from https://github.com/timfish/usb-enumeration/blob/master/.github/workflows/main.yml 2019-12-23 11:51:22 -08:00
Dustin Carlino
dafcc50479 for now, hack around layouting mess by hardcoding window width to make flex wrapping kind of work 2019-12-23 11:05:24 -08:00
Dustin Carlino
47db959155 also for picking finished trips 2019-12-22 20:14:15 -08:00
Dustin Carlino
c249934eba use flex buttons for picking a bus route 2019-12-22 20:00:19 -08:00
Dustin Carlino
2a8c657770 only upload widget backgrounds once 2019-12-22 10:52:41 -08:00
Dustin Carlino
194dbae66f embed Scroller functionality in Composite directly. use for analytics panel 2019-12-22 10:26:48 -08:00
Dustin Carlino
c130e49cb4 reverse earlier decision and put prebaked analytics back in UI, so existing plumbing works. but it's optional and carefully set/reset 2019-12-22 10:14:19 -08:00
Dustin Carlino
7c37c786fd stick the finished trips plot in the new dashboard 2019-12-21 14:47:39 -08:00
Dustin Carlino
2a67872d17 turning the old scoreboard into a separate dashboard. also fold in the
bus route explorer
2019-12-21 14:43:03 -08:00
Dustin Carlino
e7d9efc4e4 split the plot into 3 pieces, use layouting for the axes 2019-12-21 10:43:26 -08:00
Dustin Carlino
f1566b48c9 lift ManagedWidget and friends into ezgui. have a wrapper layer in game that adds callbacks. here's my herculean refactor of the week. :D 2019-12-20 15:56:04 -08:00
Dustin Carlino
a188741c06 migrate remaining users of old Plot to new Plot 2019-12-20 14:38:54 -08:00
Dustin Carlino
f6b4af1797 move road throughput into info panel 2019-12-20 14:28:34 -08:00
Dustin Carlino
c2e5678308 cut intersection delay and thruput plots over to being embedded in info panel composite. working on rendering issues. 2019-12-20 14:19:40 -08:00
Dustin Carlino
2a02e31bce making Plot be something that can be composited. just some of the glue
so far, nothing working yet.
2019-12-20 13:42:58 -08:00
Dustin Carlino
38d731e2a5 adjust traffic signal diagram based on yuwen's mocks 2019-12-20 13:11:50 -08:00
Dustin Carlino
a67b1bf19a refactor Polygon::rectangle_top_left and a few more things... taking
Distance everywhere is kind of silly
2019-12-20 12:42:49 -08:00
Dustin Carlino
ae41408c70 compute Composite layout upfront. only recompute when window is resized. 2019-12-20 11:20:09 -08:00
Dustin Carlino
6b5e33a665 glue up the next/prev phase keys 2019-12-20 11:00:38 -08:00
Dustin Carlino
49a0f7abd6 yay, delete old gunky attempts at scrolling 2019-12-20 10:30:56 -08:00
Dustin Carlino
b229c44511 make the new signal diagram selectable. it's now basically usable! 2019-12-20 10:25:14 -08:00
Dustin Carlino
04bcf77e2b work on new traffic signal scrolling panel. generalized scrollable
Composite works!
2019-12-20 09:35:27 -08:00
Dustin Carlino
988b4bed18 adjust pregame screens slightly 2019-12-20 08:12:01 -08:00
Dustin Carlino
82d91d3ec6 actually toggle layers of agent color schemes. the indirection might be
crazy expensive...
2019-12-19 14:52:54 -08:00
Dustin Carlino
56285a7b30 add screen positioning to some Composites 2019-12-19 10:59:39 -08:00
Dustin Carlino
d5312fabd4 remove the show/hide feature from ModalMenus. ModalMenus are on the way out, the icon is often covering stuff up, and now we can delete some old pngs 2019-12-18 16:26:28 -08:00
Dustin Carlino
7ad40959ca adjust all of the UI panels... 2019-12-18 16:20:14 -08:00
Dustin Carlino
ea59c84f6b start a more general top-center panel for freeform mode 2019-12-18 16:06:52 -08:00
Dustin Carlino
1eb21f2fe0 get rid of the sandbox modal menu in favor of a top-center panel 2019-12-18 15:46:21 -08:00
Dustin Carlino
0fcbd69264 flexbox margins. thanks julian 2019-12-18 15:27:52 -08:00
Dustin Carlino
3547c2cf1b move some sandox menu items to tool panel for the moment 2019-12-18 15:14:59 -08:00
Dustin Carlino
959a89e81c dont serialize paths of yet-to-be-spawned stuff. drastically reduces savestate size. 2019-12-17 18:08:59 -08:00
Dustin Carlino
a1ff95e80a exploring the feasibility of recording prebaked savestates (to use for
quick previews in edit mode). reduced size of savestates significantly
by ommitting analytics...
2019-12-17 16:36:29 -08:00
Dustin Carlino
892e0592e1 adjust rendering of parked cars 2019-12-17 15:55:47 -08:00
Dustin Carlino
dfa1b82c70 stop adjusting agent colors when zoomed in. just one fixed scheme right now. acs just for unzoomed/minimap. get rid of the "arbitrary colors" scheme 2019-12-17 15:50:09 -08:00
Dustin Carlino
75f2b46f08 implement yuwen's car colors and turn indicators 2019-12-17 15:29:36 -08:00
Dustin Carlino
7701e19c05 tune a few text button colors, to make it more obvious they're buttons 2019-12-17 14:58:36 -08:00
Dustin Carlino
a2ac3c5265 make the minimap visibility panel match up with the agent colorscheme.
remove the old color legend
2019-12-17 14:54:25 -08:00
Dustin Carlino
9aa4fda837 overhaul color scheme. no more dynamic picker or saving. sometimes
generate an easily editable JSON file.
2019-12-17 11:05:07 -08:00
Dustin Carlino
e893e6b98c add a flag to override DPI, so we can tune on mac 2019-12-16 19:09:02 -08:00
Dustin Carlino
b1da0f0284 get rid of unzoomed_radius, used to highlight agents stuck in intersections. there are better gridlock debug tools now, and this complicates the minimap 2019-12-16 18:51:29 -08:00
Dustin Carlino
4046be3966 start drawing agents in the minimap. theyre a bit big. 2019-12-16 18:46:03 -08:00
Dustin Carlino
eda40ecdec start an interactive legend for the minimap. pretty disjoint from real
AgentColorScheme right now
2019-12-16 15:40:32 -08:00
Dustin Carlino
a7071a1bc4 convert ColorLegend to Composite. 2019-12-16 14:50:21 -08:00
Dustin Carlino
8ced649b62 try a different pattern, where callers keep ownership of the Slider, instead of Composite. lots of plumbing, but it's hidden away, so this seems like an improvement. 2019-12-16 14:13:08 -08:00
Dustin Carlino
2bdd7bef74 switching speed panel to Composite 2019-12-16 13:41:17 -08:00
Dustin Carlino
9a702d5c79 an easy one: use flexbox Composite on splash screen. can't quite express
the centering
2019-12-16 10:27:52 -08:00
Dustin Carlino
ec01267dd0 let some buttons skip having callbacks and let the owner query them instead 2019-12-16 10:10:01 -08:00
Dustin Carlino
2c8f68344c move tool panel to Composite, the first one with interaction. edit mode
exit temporarily broken, need to rearrange things a bit
2019-12-16 09:42:12 -08:00
Dustin Carlino
1e9f14f62d use the new Composite for time controls 2019-12-15 18:42:14 -08:00
Dustin Carlino
d2a18069e7 experiment with using ManagedWidgets and flexbox for AgentMeters.
crazy inefficient, but the API is darn nice
2019-12-15 17:09:41 -08:00
Dustin Carlino
97c8a84efb switching out lane editing icons for yuwen's nice ones 2019-12-15 11:06:59 -08:00
Dustin Carlino
eaf01559d3 temporarily adjust position of color legends and agent meters. not the final position, but doing a release today and ideally not drawing two panels on top of each other 2019-12-15 10:30:19 -08:00
Dustin Carlino
90fcfbc1ea start with the simulation playing by default. part of #31 and something on the long list of UX issues anyway 2019-12-14 21:02:21 -08:00
Dustin Carlino
9c879ab488 click to toggle signal priority and stop signs. key didnt make sense, because no way to open an info panel for those objects 2019-12-13 15:52:23 -08:00
Dustin Carlino
442a0509dd invert the default for text background. none by default, should be an exception to use it. planning to support background more generally through some kind of widget layouting. 2019-12-13 15:45:24 -08:00
Dustin Carlino
e307e1f56d only need to prebake once per map+scenario 2019-12-13 13:57:27 -08:00
Dustin Carlino
bb09f4aa72 remove chokepoints overlay (doesnt say anything meaningful) and bike
path costs overlay (was used for debugging why bike lanes werent being
used a while ago)
2019-12-13 12:20:21 -08:00
Dustin Carlino
10e0b229a5 previous fix exposed problem entering the time warp state, need to make sure to switch to animation mode upon entry 2019-12-13 11:51:21 -08:00
Dustin Carlino
33bd713609 fix the weirdness with clicking in the info panel to choose actions. the
click event was getting immediately reused after exiting the panel,
causing the panel to reappear. problem was some widget stuff looking for
mouse-down events. instead they should look for mouse-up.
2019-12-13 11:47:02 -08:00
Dustin Carlino
4594bd5a7f add OSD annotations to let people know when to click something. use to
switch interactive spawner away from keypresses, since it's impossible
to open the info panel there anyway
2019-12-12 18:56:27 -08:00
Dustin Carlino
201c0edaab moving some debug info from the info panel to the console log 2019-12-12 16:09:01 -08:00
Dustin Carlino
5440fca4fe move the functions from the last MenuUnderButton to the ModalMenus, just so I can get rid of the atrocity that is MenuUnderButton 2019-12-12 15:24:07 -08:00
Dustin Carlino
f51a077ee9 move some more functionality to the tool panel. remove another
MenuUnderButton
2019-12-12 15:09:28 -08:00
Dustin Carlino
bd557ef4bb move savestate tools in debug mode to modal menu, getting rid of another MenuUnderButton 2019-12-12 14:12:14 -08:00
Dustin Carlino
0de212f763 move back and settings to a bottom-left panel, out of the drop-down menus. no more hamburgers! 2019-12-12 14:10:09 -08:00
Dustin Carlino
7d53f536d4 fix up speed controls a bit after yesterday's move. closes #23 2019-12-12 13:16:53 -08:00
Dustin Carlino
ed2f703e85 add some logging to debug #19 2019-12-12 10:35:51 -08:00
Dustin Carlino
dc2cc81249 make Timer methods and ModalMenu take &str or String 2019-12-12 10:25:48 -08:00
Dustin Carlino
ee598b6ae4 round of clippy. not fixing everything. 2019-12-11 16:17:15 -08:00
Dustin Carlino
260574b208 remove dependency on old ezgui context menus 2019-12-11 16:02:08 -08:00
Dustin Carlino
94502a73ed the magic hack: make the actions usable from the info panel 2019-12-11 15:55:27 -08:00
Dustin Carlino
ec40780ee3 use the action list to populate a menu in InfoPanel. cant choose the actions yet there. 2019-12-11 15:25:43 -08:00
Dustin Carlino
061aed2624 add in a shim to collect contextual actions. just silently pass-through to old behavior for now. 2019-12-11 15:04:32 -08:00
Dustin Carlino
14f4dc2e3c left click to open info panel. refiddling how drag events are detected.
kind of messy code, but the behavior is FINALLY right.
2019-12-11 13:52:01 -08:00
Dustin Carlino
706f602e10 splitting time/speed panels. horrible layouting hacks 2019-12-11 13:08:17 -08:00
Dustin Carlino
b9fd59c930 remove some debug functions from UI, document them in dev guide 2019-12-11 10:29:08 -08:00
Dustin Carlino
f0af92f00e split out an agent meter with icons for the modes 2019-12-11 10:13:36 -08:00
Dustin Carlino
2afa2ef43f experimenting with tracking and visualizing demand at traffic signals 2019-12-09 15:23:30 -08:00
Dustin Carlino
b83e61eaee little outlines for the bars 2019-12-09 14:06:25 -08:00
Dustin Carlino
c35ae15ec0 start gameplay with the histogram shown 2019-12-09 14:00:28 -08:00
Dustin Carlino
f296513b2e add mouseover to histogram 2019-12-09 13:47:46 -08:00
Dustin Carlino
11e9d7781f adjust the histogram, hide some text stats now 2019-12-09 13:42:28 -08:00
Dustin Carlino
158f09c3a9 suppress minimap in tutorials 2019-12-09 13:23:18 -08:00
Dustin Carlino
3187fc7ef8 replace MultiText with DrawBoth 2019-12-09 13:03:28 -08:00
Dustin Carlino
954ac97a9f started a histogram to show relative trip durations for fixing traffic
signals. lots of work needed.
2019-12-09 12:50:55 -08:00
Dustin Carlino
4e96363398 tuning color rewriting and placement of some svg icons. removing the
crazy shader color masking
2019-12-08 13:44:43 -08:00
Dustin Carlino
5a7314d137 Add color rewriting and stroke support for SVG images. Cut over more
images, discovering some break...
2019-12-08 12:46:56 -08:00
Dustin Carlino
77099a164b try using usvg and lyon to produce Polygon+Colors from svg files. so
far, so good. dodging a dependency on harfbuzz (which doesn't build in
my windows cross-compilation env), now trying on mac...
2019-12-08 10:24:01 -08:00
Dustin Carlino
345346a33d tune the tail lights some more 2019-12-07 18:17:00 -08:00
Dustin Carlino
e567d14fc2 silently add hotkeys to challenge picker screen for my own sanity 2019-12-07 13:29:34 -08:00
Dustin Carlino
050b9ea629 simpler turn arrows -- just plain left/right, not angle of exact turn 2019-12-07 13:21:40 -08:00
Dustin Carlino
8c98f9dc87 make cars asymmetric, so the front is easier to spot 2019-12-07 13:17:08 -08:00
Dustin Carlino
c4b0c12797 new default color scheme to use different colors for cars 2019-12-07 12:57:31 -08:00
Dustin Carlino
61ef9f0b33 adding turn lanes to the tutorial level 2019-12-07 10:44:05 -08:00
Dustin Carlino
7434ff44e1 hide savestating controls in debug mode. they interact poorly with map edits. 2019-12-07 09:38:06 -08:00
Dustin Carlino
3e629e504d grouping challenges into stages. no completion tracking yet. 2019-12-06 14:20:33 -08:00
Dustin Carlino
89a3d1cf5f one generic prebake method to rule them all 2019-12-06 13:45:15 -08:00
Dustin Carlino
5f8fe5e6a8 hack in a second scenario on a synthetic map, just to start to figure out how to organize this 2019-12-06 11:33:01 -08:00
Dustin Carlino
81a19eb78d remove the experimental hi-res grass and park textures and all the
flagged off textures. going to experiment in a different branch instead.
2019-12-05 09:37:05 -08:00
Dustin Carlino
5e646c0dbd move prebaked analytics back to gameplay runner. now that they depend on scenario and map, automatically loading them is harder, and it's confusing to be all the way up in UI. 2019-12-04 17:15:33 -08:00
Dustin Carlino
1753a40a25 prebake results for tutorial levels too, really manually. load prebaked
results more manually, since it now depends on map and scenario.
2019-12-04 16:36:01 -08:00
Dustin Carlino
e4ab4739df squeezing in a challenge for the first traffic signal tutorial.
prototyping some new abstractions for specifying demand.
2019-12-04 15:12:18 -08:00
Dustin Carlino
e308fa666b prevent loadign edits that dont fit the current gameplay mode 2019-12-04 14:10:18 -08:00
Dustin Carlino
a654f7ddc7 be able to show intersection delay over time 2019-12-04 11:15:10 -08:00
Dustin Carlino
d0cdf2412d record intersection delays in analytics 2019-12-04 10:48:36 -08:00
Dustin Carlino
c329ce6522 remove unusd neighborhood summary tool 2019-12-03 15:18:27 -08:00
Dustin Carlino
394e14270f simple final score for fixing traffic signals 2019-12-03 15:01:06 -08:00
Dustin Carlino
10e44dd0b8 move dev flag into options 2019-12-03 14:36:51 -08:00
Dustin Carlino
db8bc73ddd finally grouping system data too. forgot some data/input things... 2019-12-03 12:22:59 -08:00
Dustin Carlino
72c68aa320 remove old census popdat stuff 2019-12-03 11:42:02 -08:00
Dustin Carlino
6695f72847 organize abstutil paths internally a bit, inching towards organizing data/ dir 2019-12-03 11:15:17 -08:00
Dustin Carlino
71854bc959 toggle color scheme in options panel 2019-12-03 10:56:47 -08:00
Dustin Carlino
3fc4684fec starting an options panel, with a way to toggle traffic signal rendering style 2019-12-03 10:39:16 -08:00
Dustin Carlino
7ddd9cb277 try an experiment to draw traffic signals using the editing boxes 2019-12-03 10:21:50 -08:00
Dustin Carlino
a043a9ba05 clean up more of abstutil path/filesystem API 2019-12-03 09:59:43 -08:00
Dustin Carlino
6170792328 centralize a little more path building in abstutil 2019-12-02 20:49:55 -08:00
Dustin Carlino
720f9b8b30 similar for writing 2019-12-02 20:41:09 -08:00
Dustin Carlino
808c3da141 panic early with a nice error if we cant read a binary or json file 2019-12-02 20:35:20 -08:00
Dustin Carlino
b533377159 come up with some building address when there are no building tags 2019-12-02 15:00:53 -08:00
Dustin Carlino
3267ec4068 switch some UI stuff to use new analytics, get rid of the old FinishedTrips cruft. remove the a/b test scoreboard for now; not sure what info is needed, and a/b test mode is a bit dormant anyway now 2019-12-02 14:55:47 -08:00
Dustin Carlino
a0956995c9 start to display more detailed breakdown of active agents 2019-12-02 14:44:03 -08:00
Dustin Carlino
27213995e5 split out a histogram for percentages. for now, duplicate code 2019-12-02 14:19:50 -08:00
Dustin Carlino
f483d7ea85 some analytics on how long people spend parking. need a histogram still 2019-12-02 12:15:38 -08:00
Dustin Carlino
200b3c8c95 avoid crash in minimap 2019-12-01 15:37:26 -08:00
Dustin Carlino
e30b1975b0 also use new loading screen for +10min jump 2019-12-01 14:28:29 -08:00
Dustin Carlino
8039680b95 showing start, current position, end of trip in the new explorer too.
cutting over to this instead of the old warping item slider one
2019-12-01 14:24:11 -08:00
Dustin Carlino
c842d6847e nicer time warp screen 2019-12-01 13:20:36 -08:00
Dustin Carlino
c9db17415d adjusting layouting 2019-11-30 10:09:31 -08:00
Dustin Carlino
295f5b7786 managed widgets are now glued to flexbox rows and columns. need to plumb
more style options, but this was the crux
2019-11-30 09:15:51 -08:00
Dustin Carlino
dbd83d0805 draw trip phase paths as traces, not with road colorer, to get that vital detail 2019-11-29 14:58:56 -08:00
Dustin Carlino
8a93265a4b draw phases of a trip route 2019-11-29 14:04:09 -08:00
Dustin Carlino
8d34759b7c start tracking and debugging phases of a trip 2019-11-29 13:15:10 -08:00
Dustin Carlino
1648b56009 fix crashes in all trip viz 2019-11-29 11:57:25 -08:00
Dustin Carlino
5fd067ea62 adding roboto 2019-11-29 10:17:14 -08:00
Dustin Carlino
6c6113d1bc ripping text data out of canvas 2019-11-28 22:41:08 -08:00
Dustin Carlino
14cabd3686 remove the old speed controls (used in all trip viz debug mode, which is broken anyway right now, and a/b test mode, which is in hiatus right now anyway) 2019-11-28 13:57:47 -08:00
Dustin Carlino
1a9c78b5fe tuning a few last things with the speed panel for now 2019-11-28 13:45:08 -08:00
Dustin Carlino
6fcf8d4478 redo layouting of new speed panel. pull absolute coordinates from
mockup. looks much closer now
2019-11-28 10:31:55 -08:00
Dustin Carlino
229bac4149 plumb tooltips for image buttons. small refactor making a
color+rectangle for an image. organizing NewSpeedControls a bit
2019-11-28 09:55:56 -08:00
Dustin Carlino
d553530ee7 prototype new speed panel. adapting changes from
https://github.com/jinzhong2/abstreet/tree/new_speed_panel
2019-11-27 15:42:19 -08:00
Dustin Carlino
e1156a6384 print negative durations properly 2019-11-27 13:20:31 -08:00
Dustin Carlino
3d614ed763 helper for duration to make real-time seconds 2019-11-27 13:16:49 -08:00
Dustin Carlino
2c49d68a0f last lingering cleanups for Duration / Time types 2019-11-27 13:12:19 -08:00
Dustin Carlino
c6bfab7cde cutover scenrio-layer stuff to use Time 2019-11-27 12:50:52 -08:00
Dustin Carlino
819e27aa5d cutover sim time (via the API) to time 2019-11-27 11:49:57 -08:00
Dustin Carlino
e109c6b5a4 switch sim analytics to use Time 2019-11-27 11:06:57 -08:00
Dustin Carlino
b8bb2667c2 click minimap to warp 2019-11-27 10:10:55 -08:00
Dustin Carlino
c0cfbde4ec add a bit of padding to the minimap, pick an initial zoom to fit the entire width, and clip using scissor test 2019-11-27 09:55:08 -08:00
Dustin Carlino
082ae0cea1 simple polygon translate API -- no use in taking distances. pt2d isnt natively expressed in meters, and mostly using this for screenspace anyway 2019-11-27 09:15:46 -08:00
Dustin Carlino
de0847073b start prototyping the minimap. discovering some problems, but a solid
start.
2019-11-26 22:03:58 -08:00
Dustin Carlino
b47a186373 unify the two JustDraw things 2019-11-26 13:55:16 -08:00
Dustin Carlino
13b1e86fb7 unify the two button types 2019-11-26 13:41:05 -08:00
Dustin Carlino
c87c043286 unify two button types, and use proper bbox for images 2019-11-25 22:00:36 -08:00
Dustin Carlino
431df09312 fix a crash when changing scenario 2019-11-25 21:39:05 -08:00
Dustin Carlino
188b2fd372 adding in some image buttons for the main menu. no highlighting yet.
wrong bounding boxes.
2019-11-25 19:31:39 -08:00
Dustin Carlino
d66daa22f0 adding some hotkeys back to the main menu. not sure how to communicate them yet. 2019-11-25 18:37:59 -08:00
Dustin Carlino
863e587d53 when exiting sim mode, reset to main menu state. reset the stack if we entered from a challenge. this also introduces dev buttons if we entered dev mode 2019-11-25 18:21:55 -08:00
Dustin Carlino
9ba4f83ca4 remove the unused total_width param from set_pos. it's confusing, and will probably change with flexbox soon 2019-11-25 17:58:55 -08:00
Dustin Carlino
dfd036300b refactor: make text_dims return ScreenDims. also, update the logo image 2019-11-25 17:38:37 -08:00
Dustin Carlino
a4d5aa766b widget wrapper for drawing text, so we can layout it 2019-11-25 17:19:22 -08:00
Dustin Carlino
b1bc7de2e8 prototype flexbox support via stretch. it unbreaks the challenge picker
screen, to start. :)
2019-11-25 16:51:45 -08:00
Dustin Carlino
e1496acf70 toggle dev mode at runtime 2019-11-25 15:23:17 -08:00
Dustin Carlino
a8aa8f526d implement the challenge picker screen 2019-11-25 11:54:15 -08:00
Dustin Carlino
573edbd13e adding the logo to the title screen and filling out some credits 2019-11-24 19:09:07 -08:00
Dustin Carlino
042db55009 try out a managed GUI state with, gasp, callbacks 2019-11-24 17:53:13 -08:00
Dustin Carlino
3511669c4e ripped out the old splash screen entirely now, new about screen 2019-11-24 17:05:44 -08:00
Dustin Carlino
305cad0563 stubbed out start to main menu screen 2019-11-24 15:46:45 -08:00
Dustin Carlino
56e2b6f81e move the screensaver to the title screen 2019-11-24 15:27:59 -08:00
Dustin Carlino
1440a8630b prototyping a text button, using it for a title screen 2019-11-24 15:23:28 -08:00
Dustin Carlino
941b423b16 make conversion from ScreenPt to Pt2D a bit easier 2019-11-24 14:42:46 -08:00
Dustin Carlino
aa4a002fb4 fix the mysterious flipped textures. i thought the UV mapping was the problem, but turns out I was using from_rgba_reversed for some mysterious reason 2019-11-24 08:55:37 -08:00
Dustin Carlino
888e405146 actually, auto-group textures into groups based on size. too tedious otherwise. 2019-11-24 08:52:50 -08:00
Dustin Carlino
a2ea691fa3 fix the 16 texture limit on mac properly, by using texture arrays for icons 2019-11-24 07:38:32 -08:00
Dustin Carlino
640fcae07e temporary workarounds for the hackathon, will revert later 2019-11-23 12:03:23 -08:00
Dustin Carlino
1145bbc8e6 overhaul ControlTrafficSignal to natively understand TurnGroups. but
it... didn't solve the problem of a left turn yield going first?!
2019-11-22 18:42:44 -08:00
Dustin Carlino
15a401205b preview stuff using a traffic signal from the editor 2019-11-22 15:10:03 -08:00
Dustin Carlino
e7bda09978 simple perf boosts: avoiding some unnecessary GPU uploads every frame 2019-11-22 14:06:44 -08:00
Dustin Carlino
44128b3615 hanle turn groups a bit more correctly in ControlTrafficSignal... but
not yet natively
2019-11-22 12:11:04 -08:00
Dustin Carlino
17c5532aca store the turn groups in the traffic signal 2019-11-22 11:36:50 -08:00
Dustin Carlino
a3f1261557 precompute TurnGroup stuff 2019-11-22 10:55:04 -08:00
Dustin Carlino
1f972e5afb handle crosswalks too 2019-11-21 16:55:40 -08:00
Dustin Carlino
55eead8ec7 improve turn block rendering 2019-11-21 16:04:53 -08:00
Dustin Carlino
aa1d7faa00 prototyping turn grouping for editing and understanding traffic signals.
half-baked, but worth moving forwards. starting to rip out old turn icon
stuff (oops, accidentally squished into this commit)
2019-11-21 15:09:57 -08:00
Dustin Carlino
318b467f69 add in traffic signal offset end-to-end 2019-11-21 10:18:01 -08:00
Dustin Carlino
f39bb7c6cb center pedestrians on bldg front paths, and group them into crowds when
appropriate
2019-11-21 09:57:01 -08:00
Dustin Carlino
d40002bb17 restrict types of edits in traffic signal fixing challenge 2019-11-21 09:24:49 -08:00
Dustin Carlino
54a58f865c argh, fix the nondeterminism. when i refactored flags a while ago, this happened. prevent from happening again. 2019-11-20 21:57:52 -08:00
Dustin Carlino
aa4805cfeb some tools to debug why prebaked analytics arent matching 2019-11-20 17:01:12 -08:00
Dustin Carlino
608ecd4075 refactor how overlays are constructed 2019-11-20 16:28:17 -08:00
Dustin Carlino
7b4dc902af starting a new challenge, just focusing on fixing traffic siggies 2019-11-20 16:09:19 -08:00
Dustin Carlino
60d59c4fc1 dont let player leave traffic sig editor with missing turns 2019-11-20 15:42:25 -08:00
Dustin Carlino
6fa9003898 turbocharge speed controls in dev mode 2019-11-20 12:52:51 -08:00
Dustin Carlino
ba2206d02a be able to start and end bike trips on bike lanes. use driving
blackholes for now.
2019-11-19 14:10:02 -08:00
Dustin Carlino
ade23dac5f also prompt to save edits before loading different edits. refactor some of the flow 2019-11-19 12:27:11 -08:00
Dustin Carlino
e26a6640a5 last chance to save unnamed edits when quitting 2019-11-19 12:05:58 -08:00
Dustin Carlino
c7fbaaf7e1 reset edits when leaving sandbox mode 2019-11-19 11:47:40 -08:00
Dustin Carlino
e435f5f4f5 add edits to the challenge splash screen 2019-11-18 13:51:11 -08:00
Dustin Carlino
71fec285b8 draw buildings on top of tunnels in zoomed-in view too 2019-11-18 13:03:31 -08:00
Dustin Carlino
788258288d make bulk lane edit safer too 2019-11-18 11:17:21 -08:00
Dustin Carlino
7b05276b68 do same validity checks before reverting lane types. otherwise you can orphan a bus stop 2019-11-18 11:03:54 -08:00
Dustin Carlino
0c2bd1ec0c no need to clobber stop signs when lanes nearby are edited. also, er, i
bricked setting lane types -- fixed ><
2019-11-18 10:43:53 -08:00
Dustin Carlino
463ed7022e small fixes/cleanups to map layer:
- print highest cost in heatmap over all turns
- rm defunct label support for roads/bldgs
- trim out unused methods from Map
- making spawner go through sim layer to get paths, consolidating a bit
2019-11-18 10:33:36 -08:00
Dustin Carlino
c58694ac8d avoid no-op edits 2019-11-17 18:48:28 -08:00
Dustin Carlino
c148016877 compress edits when saving 2019-11-17 18:36:07 -08:00
Dustin Carlino
bd108b8d9a redraw stop signs and traffic signals as changes happen 2019-11-17 18:05:35 -08:00
Dustin Carlino
8c2d383fd7 undo button, and displaying last 5 edits 2019-11-17 17:02:14 -08:00
Dustin Carlino
83352965b0 woops, forgot about a block of commented stuff in apply_edits. prevent
orphaning a bus stop
2019-11-17 12:44:24 -08:00
Dustin Carlino
2e2fd1d931 computing the actual set of modified stuff, using it for revert and info 2019-11-17 12:28:48 -08:00
Dustin Carlino
b670299b89 support un-closing an intersection. prevent closing borders. 2019-11-17 11:35:37 -08:00
Dustin Carlino
05ba77ba9b prototyping map edits as a sequence of commands. some existing behavior
temporarily lost. i think this is simpler, will forge ahead
2019-11-16 20:27:10 -08:00
Dustin Carlino
f840175ef4 display pathfinding cost in info panel and heatmap 2019-11-16 15:16:28 -08:00
Dustin Carlino
b8abeccb43 very basic pathfinding penalty for not using bike/bus lanes when theyre available. except it's not working! argh 2019-11-15 15:00:14 -08:00
Dustin Carlino
52986f90a9 dont show detail until zoomed in more. from recent user studies, current value was quite unintuitive 2019-11-15 14:37:49 -08:00
Dustin Carlino
f0cf16090f some tools to spawn bikes 2019-11-15 14:33:46 -08:00
Dustin Carlino
accc344054 use scoreboard tool to show comparison for all trips 2019-11-15 13:19:57 -08:00
Dustin Carlino
2f31893c48 label time and print in AM/PM format 2019-11-15 11:14:08 -08:00
Dustin Carlino
22397b93a7 NOW ban bikes from motorways. popdat trip filtering needed to handle
some impossible-to-fulfill requests involving borders
2019-11-15 10:48:33 -08:00
Dustin Carlino
f73e0c15af clean up dupe logic in popdat for figuring out path from a trip. instead just repeat the main path used in simulation layer 2019-11-15 10:32:49 -08:00
Dustin Carlino
8ed42e9fb6 can_use can ban bikes from highways... disabled because it's breaking
psrc scenario, about to dig in
2019-11-15 10:11:31 -08:00
Dustin Carlino
59913d79e9 also switch some border-related methods to use PathConstraints 2019-11-14 20:37:03 -08:00
Dustin Carlino
9e3f318f48 make floodfiller show reachability based on PathConstraint. start new
methods for valid turns based on PathConstraint.
2019-11-14 20:00:52 -08:00
Dustin Carlino
4c9975f8b0 be a little more precise with PathRequest 2019-11-14 19:18:22 -08:00
Dustin Carlino
354d228ceb oops, allow all speed controls even when not paused 2019-11-14 15:17:14 -08:00
Dustin Carlino
60236956c7 rm the edit impacts tool. it's better to compute and show the problems more granularly, and without using something as heavyweight as scenario trips affected 2019-11-14 13:16:56 -08:00
Dustin Carlino
ccd497848e display connectivity problems in error message state 2019-11-14 13:12:55 -08:00
Dustin Carlino
1c330d856f fix the close-intersection tool. make it check that sidewalks aren't disconnected by the change. implement un-closing an intersection for construction! 2019-11-14 13:03:33 -08:00
Dustin Carlino
98ef31fa24 disabled: import and render pedestrian traffic islands. include them in
search results.
2019-11-14 10:54:11 -08:00
Dustin Carlino
238cb5fa5a move new lane code to separate file 2019-11-13 12:54:05 -08:00
Dustin Carlino
549d57f242 plumbing through some error messages for editing lanes 2019-11-13 12:45:57 -08:00
Dustin Carlino
50e7eb5c82 haha, i uh, forgot the parking button. freudian slip? 2019-11-13 12:22:31 -08:00
Dustin Carlino
5afc45182b show which paint mode is active better 2019-11-13 11:18:43 -08:00
Dustin Carlino
f2388044f6 making the paint buttons do something... removed the old lane toggling.
cant mouseover anything except lanes while active
2019-11-13 09:48:51 -08:00
Dustin Carlino
0f427542c7 putting in dummy paint buttons to edit mode 2019-11-13 08:54:25 -08:00
Dustin Carlino
628111b421 show sidewalks disconnected in edit impact. prerequisite to preventing this. 2019-11-12 16:08:39 -08:00
Dustin Carlino
f0e715ed50 load prebaked analytics once per map 2019-11-11 15:28:50 -08:00
Dustin Carlino
1ff80b2e20 start figuring out what impact edits have on trips in a scenario. also,
count trips with the first path failing as aborted.
2019-11-11 14:14:19 -08:00
Dustin Carlino
6fb5fd2239 start modeling intersections closed for construction. ignore impact on trips, pathfinding, etc. bugs with applying edits, but a start. 2019-11-10 15:03:06 -08:00
Dustin Carlino
b24100caba collect and draw info on road throughput per some bucket of time. much
work needed.
2019-11-10 14:38:26 -08:00
Dustin Carlino
db33e3fa33 remove geom debug mode. map_editor has superceded this 2019-11-09 14:53:36 -08:00
Dustin Carlino
32aa38d164 very slightly reducing the number of colorscheme entries... 2019-11-09 14:50:42 -08:00
Dustin Carlino
5bb8e0a83b overhaul stop signs. can only toggle which roads have a stop sign or
not. no more granular control of individul turns
2019-11-09 14:20:31 -08:00
Dustin Carlino
7b2a0b87b3 just use 3 turn priorities, interpret them a bit differently.
temporarily kinda breaking stop signs
2019-11-09 13:35:55 -08:00
Dustin Carlino
e6fcc50696 better crosswalk rendering, and an overlay for finding bus lanes 2019-11-09 13:11:05 -08:00
Dustin Carlino
965037ce77 mvp of visualizing interactive sources/sinks 2019-11-08 13:16:22 -08:00
Dustin Carlino
8fa813f5c2 match agents spawning somewhere on a lane as a border intersection, so trip counting works. much simpler than the full refactor attempted in another branch. 2019-11-08 12:23:55 -08:00
Dustin Carlino
fff1068689 remove text bg in speed panel. adjust text API to remove bg color. 2019-11-08 11:56:29 -08:00
Dustin Carlino
de88805ec0 move some associated-stuff coloring to debug mode 2019-11-08 11:36:46 -08:00
Dustin Carlino
b7dd4d5ec0 stop flipping colors of cars based on stuck/moving when zoomed in 2019-11-08 09:38:38 -08:00
Dustin Carlino
c6ed4a687b adjusting how routes are shown -- thick when zoomed out, thin and dashed
when zoomed in
2019-11-08 09:32:03 -08:00
Dustin Carlino
6a5b312a07 same for correct end lanes 2019-11-07 16:32:26 -08:00
Dustin Carlino
b0dde63e57 make bulk spawner use correct start lanes 2019-11-07 16:16:04 -08:00
Dustin Carlino
863213eaf0 using trait objects to remove boilerplate 2019-11-07 13:15:59 -08:00
Dustin Carlino
5037b9e077 teasing apart some of the gameplay code 2019-11-07 13:04:35 -08:00
Dustin Carlino
9b82e7288b move load map functionality into freeform/scenario mode. hide other
things that players shouldn't see yet
2019-11-07 10:00:44 -08:00
Dustin Carlino
53d1067414 refactoring some text to compare results 2019-11-07 09:37:04 -08:00
Dustin Carlino
e82abafb70 change gridlock score to use number of finished trips 2019-11-07 08:59:29 -08:00
Dustin Carlino
5b50cac80e log scale for speed slider. thanks julian ;) 2019-11-06 14:26:10 -08:00
Dustin Carlino
255a7f735d very basic way to hover over series in a plot 2019-11-06 13:14:18 -08:00
Dustin Carlino
c326017883 make sim analytics invariant of the step() sizes called. prebaked vs
live sims were artifically different.
2019-11-06 12:31:13 -08:00
Dustin Carlino
0292c30b30 cleanup the bus delay plot 2019-11-05 16:50:54 -08:00
Dustin Carlino
af7112592f show blank plots, rather than skipping out when there's no data. handle
the current time and lots of edge cases
2019-11-05 16:40:14 -08:00
Dustin Carlino
21724aa826 moving generic plotting stuff away from trip stats 2019-11-05 13:13:09 -08:00
Dustin Carlino
1a28768df3 displaying bus delay data over time. needs work, but solid start to a
general plotting mechanism
2019-11-05 13:00:51 -08:00
Dustin Carlino
3b1a659f15 prebake results per map, and store in binary 2019-11-05 10:15:44 -08:00
Dustin Carlino
c54842faff get rid of DurationStats, just beef up DurationHistogram slightly 2019-11-04 14:31:40 -08:00
Dustin Carlino
6c16840076 rename analytics in UI to overlays, clash less with analytics from sim 2019-11-04 14:27:33 -08:00
Dustin Carlino
ec956f5b13 turning PrebakedResults into just sim analytics 2019-11-04 14:24:06 -08:00
Dustin Carlino
974ad24ec3 refactoring some TripMode enum stuff 2019-11-04 13:51:25 -08:00
Dustin Carlino
ada5484501 finishing up the montlake map, no gridlock by default 2019-11-04 12:55:04 -08:00
Dustin Carlino
33e2c3a2fe prebaking bus arrivals, and adding a comparison 2019-11-04 11:00:51 -08:00
Dustin Carlino
7eeebb72ec displaying different bus arrival info, and experimenting with storing the data differently. no prebaking yet. 2019-11-04 10:41:50 -08:00
Dustin Carlino
8d32671834 dont spawn buses by default in scenarios 2019-11-04 09:59:52 -08:00
Dustin Carlino
03e2c0b3f2 one master set of fixes in huge_seattle coordinate space, then a single override per map. start over with fixes... again. for the last time?! all the tricky cases from last time work now... 2019-11-04 09:50:59 -08:00
Dustin Carlino
7c6f2c62b6 compare faster trips by baseline over time 2019-11-03 17:17:47 -08:00
Dustin Carlino
3ba33e4bd0 add some initial info on trips to/from different locations to info panel 2019-11-02 16:34:10 -07:00
Dustin Carlino
e7068867fb fix bugs in scenario viz mode and draw demand arrows a little better 2019-11-02 16:01:02 -07:00
Dustin Carlino
2f5b5f1302 new tool to spawn a huge crowd of traffic from one pt to another. needs
viz for src and sink, but basic functionality was easy
2019-11-02 11:01:21 -07:00
Dustin Carlino
432995d8e5 confirm before bailing out of sandbox mode 2019-11-01 20:43:09 -07:00
Dustin Carlino
fa99c28d23 prebaking gridlock results too 2019-11-01 20:22:39 -07:00
Dustin Carlino
facd9c68b3 remove old gridlock detector, in favor of a tool to find the front of a
chain of blockage
2019-11-01 15:31:26 -07:00
Dustin Carlino
06dd88ec34 first cut on prebaking challenge results against different baselines.
just for faster trips right now.
2019-11-01 13:33:02 -07:00
Dustin Carlino
db86a24cda draw button text in the OSD (not owned by ezgui), not as a mouse tooltip 2019-11-01 11:45:02 -07:00
Dustin Carlino
e9e6664f61 using popup text box in a few more places to show important messages 2019-11-01 11:33:15 -07:00
Dustin Carlino
b6dee0b35d new challenge: speed up trips of some target population 2019-11-01 10:59:27 -07:00
Dustin Carlino
e564a67ad4 try to wrangle the complexities of synchronizing menus with analytics and colorschemes, which can be separately modified. added something for gridlock mode too. 2019-11-01 10:30:36 -07:00
Dustin Carlino
d187332734 prototype a new challenge to create gridlock 2019-11-01 09:59:39 -07:00
Dustin Carlino
6cf9ba678c disabled night color scheme 2019-10-31 17:06:03 -07:00
Dustin Carlino
78904c007f be able to change the statistic in the bus score display. still not
quite presenting something sensible, but...
2019-10-31 16:33:38 -07:00
Dustin Carlino
f0bc8eb1fa move a validity check for border intersections up-front in map construction. be able to skip fixes in precompute scripts too 2019-10-31 15:55:02 -07:00
Dustin Carlino
50ee547994 adding some help text to all gameplay modes 2019-10-31 15:30:12 -07:00
Dustin Carlino
f42d79cdeb avoid initially smushed challenge menus 2019-10-31 15:04:11 -07:00
Dustin Carlino
abf14e1fac track when map edits are dirty 2019-10-31 14:51:35 -07:00
Dustin Carlino
b192bda583 couple edit mode with sandbox mode. always return to sandbox mode, reseting the sim with the correct gameplay mode retained 2019-10-31 14:22:58 -07:00
Dustin Carlino
ef01501509 overhaul finished trips graph. record times in order, build the graph later 2019-10-31 13:46:26 -07:00
Dustin Carlino
c89c0d2a11 remove time travel feature entirely for now. broken, not performant, unused 2019-10-31 12:50:23 -07:00
Dustin Carlino
857a8a4a67 actually, just overlay bus route display, dont use a warping item slider 2019-10-31 12:41:31 -07:00
Dustin Carlino
11af01d0ea prevent bus routes near borders from being filtered out 2019-10-31 12:07:35 -07:00
Dustin Carlino
561a883e19 filling out optimize bus gameplay mode 2019-10-31 10:25:34 -07:00
Dustin Carlino
06170784cb organizing functionality by gameplay mode. can switch scenarios sometimes. cant spawn stuff unless in freeform mode. 2019-10-31 10:14:44 -07:00
Dustin Carlino
1d08181eaa parameterize sandboxmode by a gameplaymode. makes the reset sim button
reinitialize scenarios properly
2019-10-31 09:59:03 -07:00
Dustin Carlino
ccf12edde8 adding a sidebar to sandboxmode to show stuff related to the challenge -- time between bus stops, to start. setting this up from the challenge mode screen. lots of tweaks needed. 2019-10-31 09:04:47 -07:00
Dustin Carlino
53bd77332e start structuring the UI for selecting and running a challenge 2019-10-30 20:44:27 -07:00
Dustin Carlino
7833346fa2 cleaning up speed controls 2019-10-30 18:15:03 -07:00
Dustin Carlino
a94e210c22 changing speed controls to be a panel of manually arranged buttons. not
done, but functionality is cutover. fix details later.
2019-10-30 15:01:11 -07:00
Dustin Carlino
9d828abbd0 move bus explorer to sandbox mode. make it start at the current stop 2019-10-30 12:20:04 -07:00
Dustin Carlino
6ffa5fbf6e move savestating under a save menu 2019-10-30 10:26:44 -07:00
Dustin Carlino
9995bed6ab improve dead-ends by using a shared sidewalk corner, not a crosswalk 2019-10-30 10:10:28 -07:00
Dustin Carlino
1d5064ca1b track all bus arrivals, show distribution. track total number of
passengers per route
2019-10-29 22:11:56 -07:00
Dustin Carlino
7faeafd998 nice hatching for construction lanes, hackily encoded 2019-10-29 17:19:36 -07:00
Dustin Carlino
a5892daedb add a new lane type for road closures 2019-10-29 17:04:57 -07:00
Dustin Carlino
d757b45bff manually workaround y inversion with stretched textures by modifying the
images
2019-10-29 16:36:19 -07:00
Dustin Carlino
0575e57584 tweaks to buttons 2019-10-29 15:45:26 -07:00
Dustin Carlino
aae6d6d998 cleanup: collapse the old separated modal menu groups 2019-10-29 15:37:19 -07:00
Dustin Carlino
c2fd82328a move more controls under a general menu 2019-10-29 15:31:55 -07:00
Dustin Carlino
7574869798 tie together a popup menu and a button in a really simple way. move some
info and location things there
2019-10-29 15:14:17 -07:00
Dustin Carlino
00253d2783 using textures for the hide/show buttons. making it easier to sometimes
upload expensive textures. draw show/hide buttons on top of modal menus,
even when they sometimes overlap.
2019-10-29 13:47:04 -07:00
Dustin Carlino
49ecf2e792 move time stepping controls to speed panel, where they belong 2019-10-29 13:08:59 -07:00
Dustin Carlino
41d9588266 apply zorder in unzoomed view 2019-10-28 17:30:43 -07:00
Dustin Carlino
6f50cbaa30 finishing the big cutover from stable to original IDs. main path works,
now looking at map editor
2019-10-28 12:40:09 -07:00
Dustin Carlino
75e155fec6 filter out parking lanes without any sidewalks at all nearby (and also
warn about them)
2019-10-26 17:53:09 -07:00
Dustin Carlino
0d948cef91 share camera state between game and map_editor 2019-10-26 16:16:32 -07:00
Dustin Carlino
4d2f77e90c simple heatmapish overlay to show the bike lane network 2019-10-26 13:04:58 -07:00
Dustin Carlino
ee02ff9944 display when a bus last served a stop. move some of these analytics to
be owned by sim
2019-10-26 12:33:00 -07:00
Dustin Carlino
7d7bfef5ea filter out parking garages with 0 spots. render water on top of parks,
to workaround issue of the green lake park polygon covering everything
up
2019-10-26 11:37:10 -07:00
Dustin Carlino
1a4cf8c1a0 fix crash in all trip viz. path request might not even be possible 2019-10-26 10:29:44 -07:00
Dustin Carlino
e0bb2f97e0 debug floodfill from sidewalks, now that i'm really messing with that
connectivity
2019-10-25 14:40:52 -07:00
Dustin Carlino
3dfeae8b2c introduce a proper closed polyline abstraction, sub it in 2019-10-25 13:14:05 -07:00
Dustin Carlino
fe14e1709b implement PartialEq on Pt2D using the old epsilon_eq. too many places in the codebase are inconsistent. 2019-10-25 12:24:18 -07:00
Dustin Carlino
1e903c6cee pass a flag to disable using mapfixes, since it's annoying to keep temporarily deleting these 2019-10-25 10:09:47 -07:00
Dustin Carlino
a8490aa16f tweaking some map colors 2019-10-24 16:00:27 -07:00
Dustin Carlino
cb4720946c experiment with texturing cars, with some fun UV coordinates. looks half
reasonable when it works. breaks on duplicate points, not sure what's
wrong yet
2019-10-24 14:07:03 -07:00
Dustin Carlino
90e1277152 another attempt: weighted arrows 2019-10-24 13:19:47 -07:00
Dustin Carlino
6f3f9d085f weird heatmpish thing of all paths to/from a border or building. not too
useful.
2019-10-24 12:52:30 -07:00
Dustin Carlino
820a660132 experiment with building roofs 2019-10-23 23:36:01 -07:00
Dustin Carlino
17e02ebdf0 adding in support for rotating textures, except missing y-inversion 2019-10-23 16:30:23 -07:00
Dustin Carlino
d133dfd152 experimentally use textures for pedestrians. add support for stretching
texture coordinates
2019-10-23 15:46:00 -07:00
Dustin Carlino
299b5bb77f remove old functionality for creating only partial PSRC scenarios.
rename the main scenario to be much more enticing
2019-10-23 08:04:55 -07:00
Dustin Carlino
25ab691946 add basic usage instructions 2019-10-22 12:27:47 -07:00
Dustin Carlino
c9db056c3a start representing shared left turn lanes. nothing uses them yet,
just draw them (without the left turn markings)
2019-10-21 16:14:16 -07:00
Dustin Carlino
7ead5f9281 make traffic signal diagram always be a fixed width; zoom the intersection based on that 2019-10-21 15:17:21 -07:00
Dustin Carlino
c9a6f0a7d8 call out agents that've been blocked in an intersection for a while.
this is basically a fast gridlock detector
2019-10-20 12:49:25 -07:00
Dustin Carlino
28bb1ba194 interactively spawn a parked car in a garage 2019-10-19 17:17:33 -07:00
Dustin Carlino
5b9a8dd914 seeding buses more robustly. spot fixes to maps to prevent regressions 2019-10-19 16:54:54 -07:00
Dustin Carlino
7020544073 show which bus a ped is waiting for 2019-10-19 16:00:55 -07:00
Dustin Carlino
f1f951fc1c Revert "distinguish parked cars that have a trip scheduled or not"
This reverts commit dba7ced094.

Is slow, not so useful. Could implement more intelligently, but not
worthwhile yet.
2019-10-19 15:24:40 -07:00
Dustin Carlino
6989c72aa1 show location of all buses serving a route 2019-10-19 13:40:24 -07:00
Dustin Carlino
28f11e4ab3 draw entire bus route in explorer, with labeled stops 2019-10-19 13:02:17 -07:00
Dustin Carlino
b4b4e8fae8 solid yellow lines for oneways. dashed looks really strange with offside parking. 2019-10-18 15:08:30 -07:00
Dustin Carlino
c78486f039 fixes to short roads in 23rd. full day with freeform policy no longer
gridlocks! starting a vague tracking doc of outstanding issues per map
2019-10-18 14:19:32 -07:00
Dustin Carlino
56a277a284 show live parking counts in that analytics legend 2019-10-18 12:35:49 -07:00
Dustin Carlino
d6a9e0e541 just one copy of the code to calculate parked car seeding per bldg, in popdat. remove variant in scenario manager 2019-10-18 11:47:03 -07:00
Dustin Carlino
73a2482b6a after escaping from instantiated scenario, wind up back at splash screen, not scenario manager 2019-10-18 11:25:01 -07:00
Dustin Carlino
dba7ced094 distinguish parked cars that have a trip scheduled or not 2019-10-17 14:54:30 -07:00
Dustin Carlino
70ac1a4495 interactive spawner can force using parked cars. revamping that terrible
code.
2019-10-17 13:44:14 -07:00
Dustin Carlino
0a97482a16 er, dont need parking hints on buildings and areas. also adjust traffic
signal box color; needed updating after changing colors a while ago
2019-10-17 12:44:00 -07:00
Dustin Carlino
c70a57e7ae click to cancel info panel 2019-10-17 11:29:02 -07:00
Dustin Carlino
a55a7d3c48 cleaning up info panel for each case so far, bringing in any lingering stuff from the old sidebar branch 2019-10-14 14:23:48 -07:00
Dustin Carlino
f6865fac43 Get rid of ID::Trip, not sure why that ever made sense 2019-10-14 13:57:37 -07:00
Dustin Carlino
4df994a6c9 moving debug mode's tooltips into a popup info panel, hopefully the precursor to a sidebar 2019-10-14 13:42:22 -07:00
Dustin Carlino
430b1245c4 working on a new traffic signal scroller. disabled. decent start. 2019-10-13 18:44:19 -07:00
Dustin Carlino
5358931a5e fixing up a few lingering places in the game that were constructing text prompts 2019-10-13 15:43:11 -07:00
Dustin Carlino
85ff33e72d basic, but working, impl of cars lane-changing opportunistically 2019-10-13 14:30:20 -07:00
Dustin Carlino
a077276275 rewriting the wizard menu from scratch too. also making sure to update
master GUI state (where's the cursor?) up-front. that's independent from
letting the canvas pan, a client decision
2019-10-12 10:24:07 -07:00
Dustin Carlino
f548ded8cc most modalmenus will maintain layout themselves. also stop doing
layouting in constructors; the first event will work fine.
2019-10-11 20:45:27 -07:00
Dustin Carlino
f1cae9bd37 dont show info when modalmenu hidden, just title. simplify setting info
from outside.
2019-10-11 20:10:12 -07:00
Dustin Carlino
419017a295 small refactor btwn sandbox and abtest mode 2019-10-11 14:01:56 -07:00
Dustin Carlino
05b953d639 split sim summary onto two nice lines 2019-10-11 13:25:41 -07:00
Dustin Carlino
81addd9c8c making menu label swaps more ergonomic 2019-10-11 13:15:14 -07:00
Dustin Carlino
f71d229594 ability to change menu labels. use for speed controls and debug mode. 2019-10-11 13:09:32 -07:00
Dustin Carlino
88be94e789 simple stacked layouting for text box, slider, and modal menu (rewritten
from scratch). not fully done, but perfectly usable and clean!
2019-10-11 12:37:48 -07:00
Dustin Carlino
2edb275d3c rename cycle -> phase, match the literature 2019-10-09 15:27:25 -07:00
Dustin Carlino
21aa42891d parameterizing slider dims, making them match menus 2019-10-09 15:03:23 -07:00
Dustin Carlino
e0ae1d5195 tooltip with key bindings for hide/expand icons. doesn't look great
though.
2019-10-09 10:29:11 -07:00
Dustin Carlino
7e40f6797e avoid crash in individ_trips 2019-10-08 17:09:32 -07:00
Dustin Carlino
ee5462e7c4 woops, wasnt keeping menu state synced when pausing externally 2019-10-08 11:20:26 -07:00
Dustin Carlino
258f3d4528 reverse lane direction as a new edit. might be a few determinism issues,
but seems to mostly work.
2019-10-07 18:04:31 -07:00
Dustin Carlino
98d7f26f2d change pause/resume button to say the appropriate thing, now that it's easy 2019-10-07 14:58:55 -07:00
Dustin Carlino
7c3a26fed8 making ItemSlider and all trip viz also combine menu and slider better 2019-10-07 14:54:42 -07:00
Dustin Carlino
5b6eb8629c color buildings by number of cars needed 2019-10-07 13:19:45 -07:00
Dustin Carlino
3459d9c8fd change default font size by flag 2019-10-07 10:39:09 -07:00
Dustin Carlino
e7507bad85 plumbing initial settings to ezgui better 2019-10-07 09:45:53 -07:00
Dustin Carlino
f09b9f8a19 share shortcuts between maps 2019-10-07 09:34:11 -07:00
Dustin Carlino
1df7c580f3 hack in a way for ModalMenu to work alongside a slider. use in
SpeedControls.
2019-10-05 17:01:33 -07:00
Dustin Carlino
47ccf2c70b making normal ModalMenu be able to add/remove items. killing off DynamicMenu. 2019-10-05 14:59:59 -07:00
Dustin Carlino
13976ea0c5 start undoing the separate DynamicMenu experiment. move agent colorscheme back into main modalmenu 2019-10-05 14:23:52 -07:00
Dustin Carlino
d0879117f3 modernizing chokepoints finder too 2019-10-05 14:13:21 -07:00
Dustin Carlino
bbbfc4a064 fold trip stats into new exclusive analytics thing, so it also auto-updates 2019-10-05 13:56:43 -07:00
Dustin Carlino
85ebb225cd unifying parking availability, intersection delay, thruput stats into one exclusive thing that consistently auto-updates 2019-10-05 13:34:30 -07:00
Dustin Carlino
b40b26def8 dont draw agents when unzoomed and showing some kind of heatmap 2019-10-04 16:07:07 -07:00
Dustin Carlino
1a10e8982a basic heatmap showing busiest roads and intersections. have to revive
Sim Events kind of.
2019-10-04 15:33:26 -07:00
Dustin Carlino
0d27a11b2b map_editor tool to quickly absorb name, speed limit, lanes of nearby road for synthetic roads 2019-10-02 12:11:11 -07:00
Dustin Carlino
5f9cf2accd display basic labels on trip stats 2019-10-01 19:28:03 -07:00
Dustin Carlino
393eaff249 compacting SimOptions and SimFlags 2019-10-01 14:22:00 -07:00
Dustin Carlino
6f75cf32eb mvp of graphing finished trips over time 2019-10-01 14:09:17 -07:00
Dustin Carlino
db4db7e0d9 very basic tool to point out intersections with the most contention 2019-09-30 11:39:55 -07:00
Dustin Carlino
2e5649bf7e show count of aborted trips in scoreboard too 2019-09-29 19:19:51 -07:00
Dustin Carlino
1edb3cf81b digging into why synthetic roads are getting connected to weird places.
warping functionality, more ID debugging
2019-09-29 12:30:48 -07:00
Dustin Carlino
2554b08641 upgrade to rust 1.38, fix new clippy errors 2019-09-26 14:38:50 -07:00
Dustin Carlino
ffc8050623 refactoring OSD text construction 2019-09-25 10:36:22 -07:00
Dustin Carlino
15db77a82b show trips to/from borders, not just bldgs 2019-09-25 10:25:18 -07:00
Dustin Carlino
23166b1aa8 switch to turn restriction enums, so we can easily use IDs in map_editor 2019-09-24 18:58:06 -07:00
Dustin Carlino
b11f33f7f6 trying out a different type of menu for agent controls. explicitly
add/remove actions, and grow/shrink the menu based on temporarily
activated things
2019-09-24 13:02:23 -07:00
Dustin Carlino
39f555a788 trying out traffic signals rendered per lane, resuming from hackathon.
progress, but still doesnt look comprehensible. also flip intersection
color to blend in with roads more -- black doesn't look right, but
matching the parking lanes actually looks reasonable.
2019-09-24 10:20:31 -07:00
Dustin Carlino
fe41fcc858 robustify kml rendering 2019-09-23 17:38:45 -07:00
Dustin Carlino
c54cffe694 render yellow center lines as dashed 2019-09-23 16:42:49 -07:00
Dustin Carlino
536df84844 rename raw_data layer of stuff for easier importing, disambiguation 2019-09-23 15:00:55 -07:00
Dustin Carlino
0ae0a88abb actually, serialize MapFixes as json for now. will switch to binary when this is large later, but for now, this is easier to handle schema changes and debug. 2019-09-19 14:39:31 -07:00
Dustin Carlino
9a58136fc1 remove two debuggers (original roads and reattempting intersection geom) from game. not useful, and this could work better in synthetic or fix_map_geom. also lets us stop copying an extra polyline in the final map 2019-09-19 14:16:50 -07:00
Dustin Carlino
fbb7d8ac96 cleaning up CmdArgs usage 2019-09-19 10:42:16 -07:00
Dustin Carlino
f18fc72265 finish structopt removal 2019-09-18 17:29:34 -07:00
Dustin Carlino
ad8f984359 the convenience of a --dev flag 2019-09-17 16:49:29 -07:00
Dustin Carlino
1e4f36dec1 duplicate OSM ids in tag maps universally, to simplify some other places 2019-09-17 15:37:11 -07:00
Dustin Carlino
af22daaf69 hop to debug mode from a/b test mode, and make it a proper pushed state
from edit and sandbox mode too
2019-09-15 13:28:38 -07:00
Dustin Carlino
1f2c4e3797 make route viewer also handle mode changes and trips ending 2019-09-15 13:07:58 -07:00
Dustin Carlino
5c2d86ee95 improve a/b scoreboard colors and duration printing 2019-09-15 12:25:57 -07:00
Dustin Carlino
ece53430a1 point out the A and B in the a/b test menu 2019-09-15 10:28:10 -07:00
Dustin Carlino
fa898a9c70 fix more a/b test setup bug -- have to reset sim after applying edits.
doh.
2019-09-14 19:34:24 -07:00
Dustin Carlino
f52ab43752 fix HUGE a/b test setup bug... secondary was instantiating scenario, THEN applying map edits. possibly still broken though?! 2019-09-14 14:46:51 -07:00
Dustin Carlino
8730884eb4 dont allow setting up abtest with same edits for both 2019-09-14 13:48:21 -07:00
Dustin Carlino
974e4d43b7 fix debug mode's overlapping UIs... dont keep trying to draw all the special debug mode stuff in nested states. also stop double-drawing when using {Road,Building}Colorer 2019-09-14 13:42:43 -07:00
Dustin Carlino
1248dac270 nicer API for appending bits of text 2019-09-13 15:23:25 -07:00
Dustin Carlino
97361317ed greying out choices in scoreboard that have no trips 2019-09-11 12:51:07 -07:00
Dustin Carlino
c8e3e9ce4b rearrange colorscheme changing, so it doesnt happen in irrelevant modes 2019-09-11 12:43:06 -07:00
Dustin Carlino
612b02d526 migrating all callers off old methods. decided to keep choose_string 2019-09-11 12:32:17 -07:00
Dustin Carlino
aa3fed3395 builder-based API for wizard choosing stuff. need to convert other
callers now.
2019-09-11 11:52:34 -07:00
Dustin Carlino
224461fcdc plumb hatching bit in the style vertex attrib, not this awkward stateful uniform value 2019-09-11 11:06:57 -07:00
Dustin Carlino
9ed38c849c be able to flag off using textures, and sub a fallback color. also move texture loading into the loading screen. and fix the release script 2019-09-10 17:04:33 -07:00
Dustin Carlino
9867619c9c generalize ezgui Color to also cleanly represent textured things 2019-09-10 16:41:35 -07:00
Dustin Carlino
9a624397e0 supporting up to 10 textures 2019-09-10 15:44:07 -07:00
Dustin Carlino
fdd770088d very hacky, minimal impl of texturing water 2019-09-10 15:21:58 -07:00
Dustin Carlino
c4b47aeeb5 make other_crosswalk_ids aware of the degenerate intersection quadruple case, and avoid quadruple-rendering 2019-09-09 14:55:53 -07:00
Dustin Carlino
d98ff19c1d fix route viewer when skipping fwd in time 2019-09-09 14:39:45 -07:00
Dustin Carlino
2d3c079db5 spawn agent from sidewalk 2019-09-09 11:20:06 -07:00
Dustin Carlino
ed559bd71e geom debugger does warping 2019-09-09 09:51:15 -07:00
Dustin Carlino
43c2c72e71 importing street sign dataset to override bad parking categories from blockface. the signs look overeager... so disabling 2019-09-08 17:23:53 -07:00
Dustin Carlino
105f526e9e contextual_action takes &str or String 2019-09-07 13:56:00 -07:00
Dustin Carlino
cacd5174ad make legend crisper by removing transparency 2019-09-07 13:50:34 -07:00
Dustin Carlino
19135c7461 debug feature to kill off a stuck car 2019-09-07 13:46:47 -07:00
Dustin Carlino
caaf0954ab rename the main editor crate to game -- map editing is just a tiny piece ;) 2019-09-07 13:09:09 -07:00