David Williams wrote:
3) Rather than using a PolyVox Mesh instance, you could provide your own mesh class and PolyVox would write directly into that. For example, PolyVox could write directly in OpenGL vertex buffers or an Ogre::ManualObject, thereby reducing how many copies you have to perform.
This is beautiful, no longer will I have to deal with Irrlicht's mesh buffer to draw my extracted volume. I do have a couple questions about the functionality provided by this feature.
Say I have a volume of 10,000 x 10,000 x 10,000. I extract the entire volume into Irrlicht's mesh class (IMesh). Now I change a small region of the volume and again extract the surface data from the volume but I only extract that small region which was changed into my IMesh. Will this override all of the previous vertex and index data that was in the IMesh? Or will it actually update the IMesh with the changed data?
Also with the addition of this feature does this now mean that we will finally see support for specifying material id's on voxels and uvw data will be extracted into our mesh instances? If not it seems kind of pointless to allow extraction into our own mesh classes if we will just have to iterate through the voxel data again to apply multiple textures and texture mapping.