Flokey82 / genworldvoronoi

Generates a planet with basic climate simulation, city placement, Wavefront OBJ/SVG/PNG export, leaflet server, etc. WIP!
Apache License 2.0
4 stars 1 forks source link

Export: Import/export generated world #5

Open Flokey82 opened 1 year ago

Flokey82 commented 1 year ago

Allow the import/export of the world state as binary, so we can re-use the planet or store the state for iterative generation.

voidshard commented 1 year ago

We could also have a storage interface? How much memory does a large world take up?

Flokey82 commented 1 year ago

Well, right now I think 1 million regions take about 950 MBs if the in-memory struct is directly written to disk, but I am pretty confident that this can be shrunk by a lot :) I'm planning to first focus on exporting the geography and climate stuff as one file and then flora/fauna as another... and the third component is everything related to civilization.

It'd be great to first be able to generate a great world and then be able to experiment with civilization w/o having to re-generate the planet, ocean currents, and climate every single time. :)

I was also thinking about writing some custom marshaller, but then it might just dump all values to disk, even if we don't need some stuff like the cached "this region is a mountain" "this region is a waterfall" maps, which I can easily infer from the flux, elevation, etc :)