Commit Graph

472 Commits

Author SHA1 Message Date
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