I don't think anyone here will complain if it takes time... You have done great things for us, for greater things we'll just need patience

I had some odd things happening for small block side lengths

took me a while to figure it out, I don't fill my whole volume, usually that meant it's "empty" filled with VoxelType()...
but basically I was getting the data from other blocks...
I believe the Block::initialise function needs this:
Code:
uint32_t uNoOfVoxels = m_uSideLength * m_uSideLength * m_uSideLength;
RunlengthEntry<uint16_t> entry;
entry.length = uNoOfVoxels;
entry.value = VoxelType();
m_vecCompressedData.push_back(entry);
at least it works for Material8, I'm not sure about other materials and how they should behave