Update: Working on a better world data system. The world is split up into 256x256
chunks, which are further split into 16x16
subchunks. The subchunks will be used in a number of ways:
- for compression (e.g., a 16x16 subchunk filled with air will only need 1 byte to store and send);
- for render caching (only modified subchunks will need to be re-rendered, currently working on this, see screenshot, black lines are for debugging);
- for physics collision cache (each subchunk will correspond to a set of polygons used in the collision routines. only modified subchunks will need to have their regions recomputed);
- for networking (its likely the client will request world data on a sub-chunk basis..);
- and probably more...
