Infinite Detail Sparse Voxel Oct Tree
This system uses chunks as the top level node which manages building/rendering the mesh and saving/loading the voxels to a file. In the above video and screenshots the world is made up of 5x5x5 chunks, having the world formed in chunks means more can be loaded as necessary for larger worlds and chunks can be loaded/unloaded based on the camera’s position.
Each chunk supports up to the unsigned integer limit in block levels resulting in a possible 3.74 × 10^3878741958 blocks per chunk, although memory will be an issue long before that. All of the data for a node is stored in 2 bytes, this includes 16 bit colour, block solidness and a node’s position relative to it’s parent.