Details:
* A queue object is passed to all renderers, allowing each process to
avoid using shared memory when recording signpost data.
* New overviewer.dat file that stores persistent data between runs.
Currently used to store information on signs. markers.js is
generated by merging the stored POI list with the newly generated POI
list.
* POIs are tagged with their type (e.g. "spawn" or "sign"). This
should be useful if different types of POIs needs to be
handled/displayed differently
Known bugs:
* If you delete the last sign in a chunk, it won't be removed from
markers.js
This adds basic post-processing to images. At the moment, it only
performs actions for the png output type, but changes to work for
jpeg will be exceptionall minimal.
Polygons and polylines are read from the new file "regions.js". Polylines
(entries with "closed" set to false) are just lines drawn on the map.
Polygons (entries with "closed" set to true) are closed loops that are
filled in with a transparent color.
Instead of re-gening the chunk, it now removes it and leaves it alone.
The reason is that, now that the cache dir is separated from the chunk
data files, there's no way for that code to know where it came from. For
now, it's easier to just omit that one chunk, it'll be re-generated on
the next run anyways.
The spawn point is automatically added to the gmap as a marker.
Adding other markers (signs, mob spawners, etc) should be fairly
easy. Note: the math that converts from in-game block coordinates
to pixel coordinates is iffy. it requires a careful codereview
Added an option to enter your own zoom level. Use -z to set the map at a
particular zoom level. Zoom levels define the width and height in tiles
of the highest zoom level, each new zoom level is twice as wide and
tall. (z=6 -> 2^6 tiles wide and tall)
Implemented tile re-arrangement on map expansion. Now most tiles will
get re-used if your map needs another zoom level! No longer does it need
to re-generate everything.
No longer creates empty directories for tiles, only creates directories
if needed.
Fixed some minor off-by-one logic (and the code that canceled it out to
make it work)
When the world expands and the Overviewer is forced to create a new zoom
level, use to be all tiles needed to be regenerated. Now that the world
center is always anchored, I can do some simple renaming of folders so
now when a world expands, tiles are re-used and it's very quick!