Since d_voxelZeroCross is a list of (zero-crossing) voxels (and not voxel blocks), it should be allocated with the size...
'sizeof(int3) params.m_numSDFBlocks params.m_SDFBlockSize params.m_SDFBlockSize params.m_SDFBlockSize'
and not...
'sizeof(int3) params.m_hashNumBuckets 2'.
This allocation happens in VoxelUtilHashSDF.h (while it is filled in findZeroCrossingVoxelsKernel(...) in CUDATexUpdate.cu).
Otherwise, it could crash with an illegal memory access exception when processing larger scenes.
Since d_voxelZeroCross is a list of (zero-crossing) voxels (and not voxel blocks), it should be allocated with the size... 'sizeof(int3) params.m_numSDFBlocks params.m_SDFBlockSize params.m_SDFBlockSize params.m_SDFBlockSize' and not... 'sizeof(int3) params.m_hashNumBuckets 2'.
This allocation happens in VoxelUtilHashSDF.h (while it is filled in findZeroCrossingVoxelsKernel(...) in CUDATexUpdate.cu).
Otherwise, it could crash with an illegal memory access exception when processing larger scenes.