Commit Graph

846 Commits

Author SHA1 Message Date
Dustin Carlino
a065c63ad7 batching sidewalk lines. fix the very silly batching bug 2019-01-25 08:10:09 -08:00
Dustin Carlino
9ac0674e62 stop rounding yellow center lines. the roundness gets cut off by the intersection anyway. 2019-01-24 18:14:35 -08:00
Dustin Carlino
c7eaa2cf55 exposing some basic drawing performance stats... 2019-01-24 16:21:56 -08:00
Dustin Carlino
237a19b6ec appease the clippy 2019-01-24 16:17:22 -08:00
Dustin Carlino
559d568acd make Polygon store points and indices. don't use this fact for rendering
just yet.
2019-01-24 15:13:27 -08:00
Dustin Carlino
9182a57af5 enabling draw_arrow again... math is not quite great 2019-01-24 10:01:30 -08:00
Dustin Carlino
8d270574ec revamping fork math 2019-01-23 17:27:34 -08:00
Dustin Carlino
a25f358295 hacking around top menu issue mostly 2019-01-23 16:19:32 -08:00
Dustin Carlino
f1b81456a6 calculating line height from the font 2019-01-23 14:02:43 -08:00
Dustin Carlino
9c94e2f374 simplify text API and storage to have one bg color per line 2019-01-23 13:38:24 -08:00
Dustin Carlino
9b14206be0 implementing GfxCtx forking... aka, reset uniforms 2019-01-23 12:22:26 -08:00
Dustin Carlino
fb7a809892 tweaked camera based on canvas. workable, not great. 2019-01-22 17:12:48 -08:00
Dustin Carlino
08db3bf27f rendering traffic signal diagrams with lights per lane... needs work, so
disabling it
2019-01-22 11:58:56 -08:00
Dustin Carlino
6dee096a0e zorder for cars/peds too... had to rework get_objects_onscreen 2019-01-21 14:51:57 -08:00
Dustin Carlino
1e7b8f2dfc end interactive trips at border nodes 2019-01-21 13:53:24 -08:00
Dustin Carlino
a129adeaa1 refactoring spawning plugin so far 2019-01-21 12:43:35 -08:00
Dustin Carlino
c87c7b32ae make interactive driving trips still end at a building 2019-01-21 12:21:26 -08:00
Dustin Carlino
4b42f70da4 actually spawning walking trips... 2019-01-21 11:59:59 -08:00
Dustin Carlino
0d297b9dac let mouseover happen at low zoom for the agent spawner plugin 2019-01-21 11:47:44 -08:00
Dustin Carlino
f58f8a7ef1 make single spawn work from bldg to bldg or driving lane to driving lane 2019-01-21 11:34:22 -08:00
Dustin Carlino
998c27ddff starting a plugin to interactively spawn specific agents 2019-01-20 19:31:07 -08:00
Dustin Carlino
11045fd44f zorder for lanes and intersections 2019-01-20 14:15:50 -08:00
Dustin Carlino
f018158aa3 remove copyright comment from remaining files 2019-01-20 13:57:55 -08:00
Dustin Carlino
ae6438e8b7 show sidewalk corners when zoomed out 2019-01-19 21:19:49 -08:00
Dustin Carlino
4ca6571e2f warp by stable intersection ID 2019-01-19 21:10:54 -08:00
Dustin Carlino
fad89ddffa include more pts in the intersection polygon to only cover area from the original road bands. also fix a bug deduping points in the polygon. 2019-01-19 20:56:03 -08:00
Dustin Carlino
e403a6388d a much simpler, general approach for intersection polygons. needs a
little work, but it replaces lots of other code.

disabled, but adding a few more cases to the list of manually merged short roads
2019-01-19 19:07:07 -08:00
Dustin Carlino
0c32faa40c moving neighborhood to map_model crate, so convert_osm can stop depending on sim 2019-01-17 15:29:00 -08:00
Dustin Carlino
63c24ce5a7 improve robustness of image diffing script, even when intersection IDs change 2019-01-17 14:29:31 -08:00
Dustin Carlino
761008b3ac make raw roads directly refer to intersections 2019-01-17 11:30:58 -08:00
Dustin Carlino
3422877d3d adding a stable ID for raw roads and intersections. way easier to refer to things in the midst of deletions. 2019-01-17 11:10:05 -08:00
Dustin Carlino
dfe50dcee4 reasonable support for roundabouts... collapse it to a single
intersection, which usually gets treated like a stop sign, and has
reasonable geometry
2019-01-16 15:05:44 -08:00
Dustin Carlino
802cf333b8 list possible easy simplifications in the geom validator plugin 2019-01-16 12:48:40 -08:00
Dustin Carlino
e8e119dbbf remove all the polyline shifting/polygon variants that might fail 2019-01-15 15:25:00 -08:00
Dustin Carlino
aae021f478 oops, gigantic change trying to handle bad lane geometry
- debug points and triangles of lanes
- disabled fixes for polylines with points that change angles by 180 and can be fixed by swapping them
- organize intersection polygon code in different methods for the degenerate cases
- try something new for degenerate-two's... fix road centers, then calculate intersection corners. it fixed a few spots!
2019-01-15 13:48:15 -08:00
Dustin Carlino
3cc1ccfd26 annotate screencaps with an intersection in the shot 2019-01-15 11:00:13 -08:00
Dustin Carlino
66ef25c8aa tool to compare screencaps 2019-01-15 10:06:54 -08:00
Dustin Carlino
09a3aed407 import raw map to synthetic 2019-01-15 09:37:23 -08:00
Dustin Carlino
bae23f79da even better progress, and make it easier to deal with failed montage 2019-01-14 12:01:56 -08:00
Dustin Carlino
299f05e0a2 force showing full detail when screencapping at low zoom 2019-01-14 11:24:07 -08:00
Dustin Carlino
dbfc1ec0d2 combine the tiled images 2019-01-14 11:13:48 -08:00
Dustin Carlino
afa159abb4 ezgui-driven magic for screencapping EVERYTHING 2019-01-14 08:46:40 -08:00
Dustin Carlino
e607c6574a actually, use screengrab 2019-01-13 17:54:58 -08:00
Dustin Carlino
a94fddb209 try screenshot capture again. it's very slow and broken. 2019-01-13 15:40:58 -08:00
Dustin Carlino
66006618df hold a key to show traffic signal diagram 2019-01-13 14:14:07 -08:00
Dustin Carlino
f1536fa260 make sure sidewalk corner polygons dont explode out of the original intersection polygon 2019-01-12 23:31:35 -08:00
Dustin Carlino
665bf77345 adjust sidewalk corner colors 2019-01-12 23:19:30 -08:00
Dustin Carlino
930107793b dedupe pts from intersection polygons without making all Pt2Ds have careful resolution yet. sidewalk corners now need work... 2019-01-12 23:17:05 -08:00
Dustin Carlino
d20e433e7d remove wrappers from Turn -- force callers to think about the geometry
more
2019-01-12 20:00:22 -08:00
Dustin Carlino
73714ec173 plugin to debug polygons in depth 2019-01-12 15:26:59 -08:00
Dustin Carlino
daa55026ae making shift left/right for polyline too 2019-01-12 14:13:15 -08:00
Dustin Carlino
caf4006837 explicitly making shift right/left for Line 2019-01-12 13:48:14 -08:00
Dustin Carlino
bc6a61fc74 WIP: better sidewalk corner geometry. it's a start. 2019-01-12 13:40:06 -08:00
Dustin Carlino
25d38adf27 dont recalculate mouseover when plugins request it if zoom is too low 2019-01-12 10:52:23 -08:00
Dustin Carlino
c50013c583 dont mouseover parcels 2019-01-12 10:47:36 -08:00
Dustin Carlino
47b5d2e4aa upgrade all other deps, except for piston/winit stuff 2019-01-11 12:36:20 -08:00
Dustin Carlino
b94e0db5ec fix turn cycler panic... yet again 2019-01-11 12:24:56 -08:00
Dustin Carlino
c09fa98f57 upgrade a few dependencies 2019-01-11 10:55:58 -08:00
Dustin Carlino
2bc97fa609 adjust stuck car color, avoid weird black. and small clippy fixes 2019-01-10 19:58:12 -08:00
Dustin Carlino
eefd9abdc6 render cars using slice 2019-01-10 17:11:34 -08:00
Dustin Carlino
884c47cc6b just focus on one intersection... 2019-01-10 10:06:37 -08:00
Dustin Carlino
cb47c4b13d debug intersection polygon 2019-01-10 09:57:47 -08:00
Dustin Carlino
0522829d9a draw my own arrows, which don't exceed distance too much... except they
dont work in all cases, so disable
2019-01-09 14:59:46 -08:00
Dustin Carlino
34aa0c0d74 hide areas by default 2019-01-09 12:53:10 -08:00
Dustin Carlino
f8c7ed5ea8 woops, turn cycler assumed everything's a traffic signal 2019-01-09 12:46:44 -08:00
Dustin Carlino
37c9d01a6f declare extra space needed by modal menus. dont stretch menus to cover
that amount... yet.
2019-01-09 12:26:16 -08:00
Dustin Carlino
5ef73ee8eb show legend by default in tutorial mode 2019-01-01 14:56:06 -06:00
Dustin Carlino
71cf5116d6 new modal plugin to show a legend for explaining colors of stuff.
partially done.
2018-12-26 20:06:51 -06:00
Dustin Carlino
a232d023ff draw signal diagram exactly below modal menu 2018-12-26 19:11:03 -06:00
Dustin Carlino
1f60a718de be able to draw signal diagram farther down, as caller demands 2018-12-26 18:48:13 -06:00
Dustin Carlino
a0fefc377f draw signal diagram on the right side of the screen 2018-12-26 18:39:11 -06:00
Dustin Carlino
ed318f0c9e compute full width needed for signal diagram, including labels 2018-12-26 15:08:51 -06:00
Dustin Carlino
976f210b9a stack modal states... also fix the show score plugin drawing a bit 2018-12-25 10:27:38 -08:00
Dustin Carlino
972a0d2fa2 hide debug top menu when appropriate 2018-12-24 19:32:56 -08:00
Dustin Carlino
e91b6c1064 move debug objects plugin to... well, debug control set 2018-12-24 19:24:01 -08:00
Dustin Carlino
92c0af2f41 solved the mystery of the spurious recompiles -- editor_state and color_scheme need to live outside the crate root, so modtimes are nice 2018-12-24 19:16:38 -08:00
Dustin Carlino
0bcda36380 teardown the wretched UIState trait 2018-12-24 19:13:36 -08:00
Dustin Carlino
8708bc750b now we can make PluginCtx just once 2018-12-24 18:54:46 -08:00
Dustin Carlino
8913ea44e3 brief interruption to plumb primary_plugins to plugins that need it in a different way outside the ctx, to avoid annoying borrow issues 2018-12-24 18:51:51 -08:00
Dustin Carlino
7aed6fa690 disable debug controls in tutorial mode... except for the top menu fixes 2018-12-24 18:26:11 -08:00
Dustin Carlino
7766c80f25 cam_zoom doesnt need to be repeated in RenderOptions. 2018-12-24 18:16:15 -08:00
Dustin Carlino
d56f2fad1c reorg time travel plugin. at last, teardown the old active_plugin cruft. 2018-12-24 18:08:52 -08:00
Dustin Carlino
c83c4c4899 collapse ViewMode, moving ambient plugins out 2018-12-24 17:57:47 -08:00
Dustin Carlino
fc15b28826 lift the special case search plugin out of simmode. 2018-12-24 17:47:41 -08:00
Dustin Carlino
d06f80e918 lift warp plugin out of simmode. and categorize display logs as view,
just to organize the directory more.
2018-12-24 17:31:21 -08:00
Dustin Carlino
597828ce28 revamp toggleable layers plugin, and get rid of debug mode 2018-12-24 17:22:52 -08:00
Dustin Carlino
ad3ef954eb revamping hider plugin 2018-12-24 16:30:45 -08:00
Dustin Carlino
46b3e85bd3 flatten some DebugMode stuff that actually doesnt need to be permap, since it's exclusive blocking 2018-12-24 12:38:51 -08:00
Dustin Carlino
a626f5c542 remove steepness plugin; it's annoying and useless 2018-12-24 12:32:39 -08:00
Dustin Carlino
3b372dd9ce move DisplayLogs into exclusive_blocking_plugin 2018-12-24 12:26:02 -08:00
Dustin Carlino
7b8b9fdbe6 flatten SimMode into DefaultUIState 2018-12-24 12:19:16 -08:00
Dustin Carlino
39c3e2917e flatten EditMode into DefaultUIState 2018-12-24 10:39:24 -08:00
Dustin Carlino
d989e2fb09 convert object hider into a modal menu 2018-12-24 08:17:23 -08:00
Dustin Carlino
567ded85de stop drawing weird time left box. update the text in the diagram instead. 2018-12-23 21:31:37 -08:00
Dustin Carlino
ae6f8d5e16 show entire signal diagram when hovering 2018-12-23 21:11:30 -08:00
Dustin Carlino
e05d4be34b draw blinkers in the front and back, increase size, tweak color 2018-12-23 09:20:18 -08:00
Dustin Carlino
551a8ef63a aw yeah, unicode arrow key descriptions. and tweaking some wording from filip's feedback 2018-12-22 23:20:21 -08:00
Dustin Carlino
5d28acd1af traffic signal editor left bar should be drawn below top menu 2018-12-22 22:18:03 -08:00
Dustin Carlino
0edded5725 trying out a quick way to mark parts of the screen unavailable for map-space mouseover. oh hey, it works great. 2018-12-22 20:03:12 -08:00
Dustin Carlino
2d7034e9cb canvas wont serve up map-space cursor when it's out of the window 2018-12-22 17:12:30 -08:00
Dustin Carlino
0aece4944d prep for disabling mouseover by changing canvas API. fix neighborhood
plugin to handle out-of-bounds points while we're there.
2018-12-22 16:49:47 -08:00
Dustin Carlino
099fd288fe all arrows are rounded 2018-12-22 14:02:42 -08:00
Dustin Carlino
88ef720f16 dont overdraw turns in turn cycler, and fix colors when cycling through individual turns 2018-12-22 13:40:33 -08:00
Dustin Carlino
ce45b5469b highlight turn icon circle, not arrow, so we can keep seeing the current priority. draw the big turn differently too. 2018-12-22 13:31:08 -08:00
Dustin Carlino
9b6725fc7d back to adjusting GUI colors 2018-12-22 13:12:10 -08:00
Dustin Carlino
9d32ef8b83 use const functions to construct constant colors in many cases, now that rust 2018 is here 2018-12-22 12:39:17 -08:00
Dustin Carlino
0f62da0f63 centralize and adjust constants for text colors. also clean up places
unnecessarilly passing in RGB values for constants
2018-12-22 12:26:34 -08:00
Dustin Carlino
2510625efc removing piston window size type from canvas, meaning piston deps are now very narrowly isolated to part of ezgui 2018-12-21 10:00:45 -08:00
Dustin Carlino
31ddbd0e61 draw stop sign line closer to the intersection 2018-12-20 12:32:59 -08:00
Dustin Carlino
c27015223c distinguish intersection types by color, even when zoomed out 2018-12-20 12:03:44 -08:00
Dustin Carlino
0c2a389f96 dont draw complicated stop sign depiction when hovering. simplify lots of the rendering hints, also fixing up traffic signal crosswalk depiction. 2018-12-20 11:28:42 -08:00
Dustin Carlino
f0250b4571 always depict traffic signals, not just when hovering with turn cycler.
partly broken right now.
2018-12-20 11:00:50 -08:00
Dustin Carlino
7b9a24f99f draw traffic signal timer box in the intersection, not the corner of the screen 2018-12-20 10:42:17 -08:00
Dustin Carlino
999c4e6975 follow build.rs output rules better... even though spurious recompiles
still happen. :(
2018-12-20 10:21:52 -08:00
Dustin Carlino
b7f31cc8f4 make canvas know initial screen size, so centering on map pt initially does work 2018-12-18 15:37:44 -08:00
Dustin Carlino
887a8a7fcb dont show intersection stuff when zoomed out 2018-12-18 13:50:31 -08:00
Dustin Carlino
64e5bcc8f8 draw turn blinkers on cars 2018-12-18 12:24:37 -08:00
Dustin Carlino
0a18d2afd2 fix broken top menu hotkeys when a submenu is present 2018-12-18 11:50:23 -08:00
Dustin Carlino
3a3499db39 dont show car lookahead buffers by default 2018-12-18 10:03:22 -08:00
Dustin Carlino
cdc9c58ab4 start tutorial mode centered on the right thing. improve map label API by returning references. 2018-12-18 09:57:51 -08:00
Dustin Carlino
ac961f2016 start tutorial with sim playing 2018-12-18 09:48:22 -08:00
Dustin Carlino
7621f6a999 dont offer an irrelevant ped scramble cycle 2018-12-18 07:54:22 -08:00
Dustin Carlino
7ebc51ee64 use arrow keys to switch cycles, not numbers. remove number_chosen. only allow arrow keys in wizard menus. 2018-12-17 20:40:32 -08:00
Dustin Carlino
fdac85f7fb use the modal sidebar, not the osd, in a few places 2018-12-17 17:03:46 -08:00
Dustin Carlino
e368919cfd fixing neighborhood editor 2018-12-17 16:58:24 -08:00
Dustin Carlino
4a98e1d086 convert all plugins to modal calls 2018-12-17 16:40:03 -08:00
Dustin Carlino
787c965985 explicit type for screen-space stuff in ezgui 2018-12-17 14:25:05 -08:00
Dustin Carlino
32db434862 trying out modal flow in UserInput... at least initially displaying the
sidebar
2018-12-17 13:58:06 -08:00
Dustin Carlino
acbd08240d few things that should be in top menu 2018-12-17 13:16:31 -08:00
Dustin Carlino
bbacdfb676 declaring modal menus 2018-12-17 13:08:46 -08:00
Dustin Carlino
875edddc7a undo the few remaining places that pass in keys to plugins 2018-12-17 11:49:36 -08:00
Dustin Carlino
b3dea902de handle window close event 2018-12-17 11:33:57 -08:00
Dustin Carlino
21c61e4a60 avoid typos in action_chosen 2018-12-17 10:23:14 -08:00
Dustin Carlino
e64c44da33 change calls in UI 2018-12-17 10:05:19 -08:00
Dustin Carlino
1f1f3b63e2 wiring up submenu events 2018-12-17 09:07:49 -08:00
Dustin Carlino
8aa12fb6d9 highlight selected item in top menu 2018-12-16 19:41:11 -08:00
Dustin Carlino
efc0db122a specify top menu in UI, but it doesn't do anything yet 2018-12-16 18:23:17 -08:00
Dustin Carlino
2a5384cf11 making wizard use the new Menu 2018-12-16 16:29:25 -08:00
Dustin Carlino
11945739bd rename old ezgui menu to scrolling menu, which color picker will keep using for now 2018-12-16 14:18:43 -08:00
Dustin Carlino
4629015e12 delete unused TreeMenu and stop passing in the category for unimportant actions 2018-12-16 14:13:28 -08:00
Dustin Carlino
9adcb0315e making my own event, mapping piston's event to it. will simplify downstream code and make moving away from piston even easier. 2018-12-15 20:44:28 -08:00
Dustin Carlino
cf74050758 dont call event() for a render event 2018-12-15 12:24:06 -08:00
Dustin Carlino
003881fe93 prototyping right-click context menus. solid start, lots of work needed. 2018-12-15 10:39:50 -08:00
Dustin Carlino
7b6d20bb08 tweak instructions and at least say what current turn priority is in OSD 2018-12-14 12:38:38 -08:00
Dustin Carlino
8a8d017063 hide all agents when editing intersections, so turn icons are always
visible
2018-12-14 12:21:12 -08:00
Dustin Carlino
3f2a7d6e68 display when a traffic signal is in overtime 2018-12-14 12:01:00 -08:00
Dustin Carlino
a8ee229793 fix traffic signal bugs letting TurnPriority::Banned cars in on a cycle 2018-12-14 11:40:18 -08:00
Dustin Carlino
28d025103c show accepted agents when hovering over an intersection 2018-12-14 11:29:14 -08:00
Dustin Carlino
2a8842aa00 brief round of clippy 2018-12-14 11:13:05 -08:00
Dustin Carlino
c55faec3fe more color in tooltips 2018-12-14 11:11:34 -08:00