Commit Graph

307 Commits

Author SHA1 Message Date
Dustin Carlino
0bcbac1fee upgrade a few misc packages 2020-03-17 10:35:37 -07:00
Dustin Carlino
1cce49648b some fixes to get Perth to import, part of #27
- filter out indoor corridors
- plumb through a flag for driving on the right/left. don't use it yet.
2020-03-16 15:20:35 -07:00
Dustin Carlino
f97918ff04 fixing the bug with grouping PSRC trips by unique person -- thanks to
folks at PSRC for helping track this down
2020-03-05 11:19:32 -08:00
Dustin Carlino
7407e5778f some investigation into psrc tour segments again 2020-03-02 15:50:32 -08:00
Dustin Carlino
fbb4140181 tiny wasm cleanup. havent figured out serde problem yet. [rebuild] 2020-02-25 10:35:58 -08:00
Dustin Carlino
bd51208684 name intersections in info panels better, and avoid horizontal scrolling
in most?? cases
2020-02-17 17:07:25 -08:00
Dustin Carlino
d292e29ad0 get the game crate running in wasm. bundle in lots of data files, fake out a few more IO things, glue timer println's to console log 2020-02-15 16:44:06 -08:00
Dustin Carlino
b2c92ab8f9 upstreaming some changes for wasm here
- use instant crate
- bring in the wasm ezgui backend and necessary setup tweaks
- upgrade stdweb

but no map editor build magic yet
2020-02-14 14:28:25 -08:00
Dustin Carlino
872cd0cba6 'save as' feature for map edits. autosave otherwise. 2020-02-06 12:31:06 -08:00
Dustin Carlino
8228f53d02 make it easier to debug objects by warping to them, draw turn cycler
arrows a little more successfully
2020-01-31 14:06:37 -08:00
Dustin Carlino
79de16a840 get the sim crate to build to wasm. a small step towards #21 2020-01-30 17:28:52 -08:00
Dustin Carlino
09e87687db more of the minimap tut 2020-01-21 15:45:43 -08:00
Dustin Carlino
95a84fd26a tweaking rustfmt options; the long literal string vecs in tutorial look awful 2020-01-21 15:20:02 -08:00
Dustin Carlino
53f33a31e4 hide IDs unless in dev mode 2020-01-09 11:50:56 -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
3755d9b858 proper clone for Sim 2019-12-24 14:47:07 -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
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
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
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
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
ac4cfea3e3 skip hidden files (.gitignore started showing up, oops). also, stash
screenshots outside of the game/ dir, so we dont recompile when we
accidentally create these
2019-12-05 14:21:17 -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
3501aa6d72 reviving some way of saving and using purely synthetic maps. creating a
few for the traffic signal tutorial.
2019-12-04 12:19:17 -08:00
Dustin Carlino
10e44dd0b8 move dev flag into options 2019-12-03 14:36:51 -08:00
Dustin Carlino
d47be1e175 start a script to package data, stick it in dropbox, suck it down for
fast bootstrapping. split off developer instructions. not finished,
because I need a better connection to upload the seed data and test
everything...
2019-12-03 14:31:00 -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
b589bf9f36 grouping player data 2019-12-03 12:09:23 -08:00
Dustin Carlino
2a103d0a21 also group raw_maps in data/input 2019-12-03 12:06:49 -08:00
Dustin Carlino
0e99f40150 merge data/shapes and data/input. stop keeping around raw .kmls. adjust
gitignore to make it easier to spot defunct files in my repo
2019-12-03 11:55:54 -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
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
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
2e2fd1d931 computing the actual set of modified stuff, using it for revert and info 2019-11-17 12:28:48 -08:00
Dustin Carlino
7800ac046e WIP detecting problems applying fixes 2019-11-06 09:58:21 -08:00
Dustin Carlino
3b1a659f15 prebake results per map, and store in binary 2019-11-05 10:15:44 -08:00
Dustin Carlino
ec956f5b13 turning PrebakedResults into just sim analytics 2019-11-04 14:24:06 -08: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
f09b9f8a19 share shortcuts between maps 2019-10-07 09:34:11 -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
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
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
62d1777433 getting rid of structopt in more crates 2019-09-18 16:50:32 -07:00
Dustin Carlino
dd02010614 switched to my own CLI parsing in convert_osm, away from structopt. compilation time down from 6.7s to 4.5s, and parsing is more clear now! 2019-09-18 16:37:22 -07:00
Dustin Carlino
d86f4a6e89 separate files for groups of fixes 2019-09-18 10:48:17 -07:00
Dustin Carlino
c6641dc1b9 get rid of unused globally-scoped notes 2019-09-14 19:19:35 -07:00
Dustin Carlino
43de343372 stop serializing synthetic's model format, just save raw_data maps 2019-09-11 13:52:49 -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
Dustin Carlino
44799c0717 refactor a Counter type 2019-09-05 18:44:24 -07:00
Dustin Carlino
048976a256 spawn a specific number of parked cars per bldg for a scenario. dont use
them yet.
2019-09-05 09:45:02 -07:00
Dustin Carlino
f8aaf4d7bf using dyn explicitly, per rust 1.37 deprecation warning 2019-08-22 15:05:17 -07:00
Dustin Carlino
a9267c76c7 debug tooltip showing how far an agent has traveled and how much
remains. seems to have small perf impact on initially calculating paths.
:(
2019-08-16 15:43:20 -07:00
Dustin Carlino
a5b73c060a make savestate_every a flag again 2019-08-16 13:34:38 -07:00
Dustin Carlino
4e83f492d8 upgrade rand, get rid of now unneeded serde1 feature, in hopes of fixing feature mismatch between deps 2019-08-15 12:14:35 -07:00
Dustin Carlino
8c7116af97 heavily revamping wizard callers... wow, what a huge difference! 2019-08-07 15:27:25 -07:00
Dustin Carlino
d71c4c2f52 woops, little bug with eliding throwaway timer printing 2019-08-06 14:14:10 -07:00
Dustin Carlino
bf5c45cd72 menu to load any savestate 2019-08-06 13:18:34 -07:00
Dustin Carlino
876bb46c70 parallelizing DrawLane setup... not sure it helps, but keep for now. 2019-08-05 14:28:22 -07:00
Dustin Carlino
c82413fca5 make a per-map editor_state, and move a few more things into data/ 2019-08-05 13:04:31 -07:00
Dustin Carlino
77c01580f1 refactoring path references... 2019-08-04 17:11:33 -07:00
Dustin Carlino
0711056d89 save and restore savestates for entire a/b tests. launching from scratch
takes 33s in debug, this takes 19s
2019-06-21 12:47:00 -07:00
Dustin Carlino
0adeac1d53 remove the single point associated with intersections, now that we're
actually going to be mucking with geometry. it wasnt doing anything
useful anyway. also a round of clippy.
2019-06-12 10:10:04 -07:00
Dustin Carlino
98e073d8be save hints from debug_initialmap, use them when constructing the real
map
2019-06-11 17:41:47 -07:00
Dustin Carlino
4e2d16af29 consistently using file extensions of .json and .bin, merging duplicate abstutil io functions accordingly 2019-06-11 14:30:11 -07:00
Dustin Carlino
47654b61cf make wizard acknowledge a bit easier to use. name psrc scenarios by time
range and fix some filename parsing
2019-06-10 13:29:23 -07:00
Dustin Carlino
5ab5b7b3d3 actually apply scenario name when instantiating to sim run name, so savestates look nice. fix find next/prev savestate to not require exact current match -- why did I ever do that? 2019-06-06 11:55:49 -07:00
Dustin Carlino
0923bfd1ac write scenarios in binary, not json. -shrug- 2019-06-05 13:32:02 -07:00
Dustin Carlino
97fe81d271 VERY fast clip_trips: parallelism, faster distance function, don't
constantly recalculate pts
2019-05-31 14:43:15 -07:00
Dustin Carlino
0c4399e683 use mem::replace, not clone, for swapping TimeTravel states 2019-05-30 15:34:33 -07:00
Dustin Carlino
53addc79b9 use ItemSlider for time travel 2019-05-30 15:20:43 -07:00
Dustin Carlino
bad4ea7039 gluing file reader to timer, so progress shows up on loading screens 2019-05-29 12:52:49 -07:00
Dustin Carlino
40efcc7b05 generalize a parallelize method for timers, use for all trip viz 2019-05-25 19:35:35 -07:00
Dustin Carlino
7b4b0b20b7 use a skip_fail macro in loops 2019-05-23 16:26:22 -07:00
Dustin Carlino
b398bfc026 fix reprinting 2019-05-05 08:58:32 -07:00
Dustin Carlino
af30d93ba8 also reprint Timer lines -- has a bug, but this is a start 2019-05-04 17:47:02 -07:00
Dustin Carlino
eed33931de proof-of-concept for gluing Timer to loading screen. hacky and not
featurefull yet.
2019-05-04 16:41:01 -07:00
Dustin Carlino
45083198ea load different maps from splash menu 2019-04-21 15:59:04 -07:00
Dustin Carlino
46d24a7c58 compile on mac 2019-04-19 09:23:36 -07:00
Dustin Carlino
2ecd8a0edb avoid crash in make_shared_sidewalk_corner 2019-04-12 13:32:41 -07:00
Dustin Carlino
8f4e8e18b2 stop making panic()s crazy with Timer drop 2019-03-15 12:35:53 -07:00
Dustin Carlino
15f6981b1d make tests pull events new way, stop returning from step(). fix termion
and test runner.
2019-03-12 13:29:58 -07:00
Dustin Carlino
3eb5270d51 trying to cross-compile to windows. making some unix-only dependencies
optional.
2019-03-11 17:09:47 -07:00
Dustin Carlino
5ca359998c upgrade some dependencies and list data source licenses in README 2019-03-11 16:04:47 -07:00
Dustin Carlino
899718bf48 clear to end of line properly in Timer, using termion 2019-03-11 14:34:38 -07:00
Dustin Carlino
92bf86454c cleaning up TODO docs 2019-03-11 13:46:58 -07:00
Dustin Carlino
1eebea8001 cutting over to new graph search in some cases. adding support for
one-step walking paths.
2019-03-08 10:47:39 -08:00
Dustin Carlino
3bbcb00d43 also stop using multimap crate in map_model 2019-03-01 12:25:00 -08:00
Dustin Carlino
5f6d7e1b66 fix sim nondet test failure by using BTreeMap in my MultiMap 2019-03-01 12:16:52 -08:00
Dustin Carlino
f249c6b2d9 call Timer.done automatically using Drop trait. use throwaway less 2019-02-27 12:15:04 -08:00
Dustin Carlino
09af9e6cda removing the log crate completely. remove the DisplayLogs plugin, since
it's unused and unclear how it should work going forwards
2019-02-20 11:56:54 -08:00
Dustin Carlino
e4ef1ec79d removing log from sim 2019-02-20 11:22:51 -08:00
Dustin Carlino
a026c02890 removing log crate from map_model 2019-02-20 11:03:34 -08:00
Dustin Carlino
c2791a6ead using Warn in all of geom 2019-02-20 10:36:58 -08:00
Dustin Carlino
1848387ef0 starting to organize warnings in a much more reasonable way. 2019-02-20 10:08:02 -08:00
Dustin Carlino
21ddbc2ecc very primitive breakdown of where memory is going 2019-02-12 12:11:10 -08:00
Dustin Carlino
1d3e4284a7 do some tracking of video memory used by RenderMap 2019-02-11 12:02:29 -08:00
Dustin Carlino
8b6a863b60 print timer iterations and durations more legibly 2019-02-11 11:16:07 -08:00
Dustin Carlino
606340e2db switch to bincode. almost half file size, reading small_seattle went
from 40s to 7s in debug mode!!!
2019-02-10 16:20:44 -08:00
Dustin Carlino
ec01207369 try upgrading rand and serde again 2019-02-10 15:57:28 -08:00
Dustin Carlino
f454c691f0 making a profiler to breakdown what parts of sim are slowest 2019-02-05 14:04:03 -08:00
Dustin Carlino
097d1591e1 load previous/next initial map. refactor this functionality for sim
savestates
2019-02-01 11:03:57 -08:00
Dustin Carlino
61128f098b make my own retain for btreemap. also refine the loop-road filtering in
the experimental road merger
2019-01-17 15:09:09 -08:00
Dustin Carlino
47b5d2e4aa upgrade all other deps, except for piston/winit stuff 2019-01-11 12:36:20 -08:00
Dustin Carlino
c09fa98f57 upgrade a few dependencies 2019-01-11 10:55:58 -08:00
Dustin Carlino
ab86835611 initially playing with clippy... pt1 2018-12-08 18:21:56 -08:00
Dustin Carlino
91b2b07fbd remove more extern crate's; import macros directly 2018-12-06 11:22:12 -08:00
Dustin Carlino
375a923a9d try removing most extern crate's 2018-12-06 11:00:13 -08:00
Dustin Carlino
f64f411093 upgrade all crates to 2018 in Cargo.toml. this requires switching to
crate:: paths everywhere. not yet fiddling with 'extern crate's
2018-12-06 10:57:31 -08:00
Dustin Carlino
6a0cd7f71e rust 2018: run the new fmt, delete the unneeded script 2018-12-06 10:05:50 -08:00
Dustin Carlino
e75ef3f9e6 making an easy way to record and dump notes at the end of verbose setup logging, without being tied to a Timer 2018-12-01 13:23:18 -08:00
Dustin Carlino
c3ec2c9dd9 make some logs show up more noticeably 2018-11-23 11:09:36 -08:00
Dustin Carlino
b2c976b439 make Sim or TimeTravel be able to serve up Draw agents 2018-11-22 14:46:28 -08:00
Dustin Carlino
b2e3f25393 moving RNG helpers from sim to abstutil 2018-11-13 10:50:54 -08:00
Dustin Carlino
9cb1337785 starting a rewrite of the code to find turns between sidewalks, based on
road adjacencies. needs a few more intermediate steps.
2018-11-05 17:15:54 -08:00
Dustin Carlino
e60fe0f0fe logging that repeats after a verbose setup 2018-11-01 13:24:15 -07:00
Dustin Carlino
60246dc7f1 woops, fix timer API change 2018-10-30 15:47:23 -07:00
Dustin Carlino
8a1ee5c32b slight improvements to Timer API and output 2018-10-30 15:17:04 -07:00
Dustin Carlino
a6bc3ed2a0 progress for KML parsing 2018-10-30 13:18:24 -07:00
Dustin Carlino
b7e184eeca adjusting scripts to convert OSM polygons 2018-10-29 15:53:04 -07:00
Dustin Carlino
dda3355415 massively speed up map saving with buffering ;) 2018-10-28 20:09:00 -07:00
Dustin Carlino
0eacc4c040 track un-labeled time per span 2018-10-28 19:37:27 -07:00
Dustin Carlino
19bb98b347 fixing Timer.done() order 2018-10-28 19:07:58 -07:00
Dustin Carlino
c7d7c93503 printing timer output live without indention 2018-10-28 17:44:30 -07:00
Dustin Carlino
a45521e1a6 using Timer with read_binary 2018-10-28 17:17:35 -07:00
Dustin Carlino
f011f8f56d making hierarchial progress timer to replace flamegraphs. using in many,
but not all, places
2018-10-28 16:40:37 -07:00
Dustin Carlino
65d8c92f63 investigating and fixing orphaned intersections 2018-10-28 12:50:15 -07:00
Dustin Carlino
c78b721bce implementing progress bars and trackers for large file readers, using in map loading phases that might be slow 2018-10-28 08:31:51 -07:00
Dustin Carlino
def2f60a92 refactor log adaptor stuff 2018-10-21 11:32:17 -07:00
Dustin Carlino
5a11c705f0 woops, load_all_objects was picking up vim swapfiles 2018-10-13 18:25:08 -07:00
Dustin Carlino
6f33c9a6da failure crate actually sucks for context, rolling my own simple thing 2018-10-10 16:24:33 -07:00
Dustin Carlino
fcf0366e90 er, stripping .json vs not... 2018-10-08 15:14:17 -07:00
Dustin Carlino
23fc634eb4 refactoring wizards and loading/listing stuff 2018-10-08 12:18:13 -07:00
Dustin Carlino
2fffbb53f9 refactoring logic to save stuff 2018-10-08 10:21:13 -07:00
Dustin Carlino
fcfef89760 intermission: handling empty directory listings, menus 2018-10-08 09:45:21 -07:00
Dustin Carlino
daac00155e start animating the lines 2018-10-06 14:30:57 -07:00
Dustin Carlino
2b0af3ea52 fixing name of map edits... 2018-10-05 10:58:45 -07:00
Dustin Carlino
b1ef405892 filling out edits manager 2018-10-03 17:03:26 -07:00
Dustin Carlino
3d2255d728 move wizard to ezgui \o/ 2018-09-25 14:43:56 -07:00
Dustin Carlino
585bb1bcd3 generic way to load stuff from a dir 2018-09-24 14:54:31 -07:00
Dustin Carlino
7d8416c8f7 splitting up abstutil crate into modules 2018-09-24 14:37:01 -07:00
Dustin Carlino
bcc65941f3 saving polygon areas 2018-09-19 09:30:01 -07:00
Dustin Carlino
ad55fd2924 detect when editor_state is for another map and ignore intersection changes 2018-09-09 13:21:53 -07:00
Dustin Carlino
73f4c95bd0 test to make sure savestating stays deterministic 2018-08-01 13:37:26 -07:00
Dustin Carlino
aaf2933768 debug cars and peds 2018-08-01 09:35:02 -07:00
Dustin Carlino
c7bf59dde0 refactor serde multimap helper 2018-07-30 17:39:15 -07:00
Dustin Carlino
93815c91f0 argh, broke serialization again. refactoring a nice btreemap solution 2018-07-30 14:50:53 -07:00
Dustin Carlino
1c85188a64 WIP removing disconnected chunks of map. leaves orphaned intersections
still, so disabled.
2018-07-22 16:31:31 -07:00
Dustin Carlino
2ebc13140b round of rustfmt after 1.27 upgrade 2018-07-09 12:30:59 -07:00
Dustin Carlino
82bac55275 use cbor for maps 2018-06-26 09:45:01 -07:00
Dustin Carlino
5ce158cb90 refactoring json saving/loading 2018-06-22 13:36:12 -07:00