I can tell you right now, the MIP stuff is just sized-down copies of the voxel data stored consecutively in the file, just like MIP levels for textures. The first level is the original image, the next level has all dimensions cut in half, the third level is cut in half again, and so on. So you pick which one to use based on how far the voxel is from you.esselfortium wrote:writing up some sort of documentation regarding the MIP stuff
The only other specific KVX feature is the back face culling info. It's just a bitfield for each post that describes which faces are visible. It's only needed because KVX discards interior voxels that are never seen anyway and would be a waste of time to render. You can get the same information from VOX by actually looking at the neighboring voxels. (Though KVX is more efficent, since you find out for several voxels all at once instead of having to check each one.)
Rendering the voxel amounts to stepping through the object from back to front in the X/Y plane and drawing each column down in the Z plane, just like sprites. Finding the column data is just like finding the column data for a Doom patch, except it uses a two-stage lookup, as described in the slab6 documentation.