ABSTRACT

This chapter describes how the goal can be achieved using Direct3D 11, covering the process of turning an input scene, given as a collection of triangles, into a binary surface or solid voxelization. It shows that Graphics processing units-accelerated binary surface and solid voxelization can be realized with Direct3D 11. With surface voxelization basically being a three-dimensional extension of rasterization, it is natural to try to pose this process in terms of rasterization and harness the according existing hardware units. Using a buffer resource and storing the voxel grid as a linearized 3D array, each voxel can be easily accessed via simple indexing into this buffer. In particular, this makes working with the generated voxelization rather straightforward. In conservative surface voxelization, generally, significantly more voxels are set than in rasterization-based surface voxelization. Obviously, realizing a software voxelizer using DirectCompute is not restricted to surface voxelization.