How does a voxel representation of a scene work?

How does a voxel representation of a scene work?

A voxel representation of a scene has spatial data as opposed to the conventional rasterization view (as stored in a render target) which just has a slice of depth value. A voxelized scene can be easily traversed spatially and you can access data from coarse world locations.

What do you need to know about GPU voxelization?

What is GPU Voxelization? The basic concept of GPU Voxelization to use GPU shaders to convert a scene composed of triangle meshes into a regular voxel grid representation. The process for doing this is pretty straightforward.

How is a voxel covered by a bounding box?

The process consists of two parts. The first one is an AABB (Axis Aligned Bounding Box) test and the second one is an edge-voxel condition test. If a voxel passes these two tests then the primitive intersects that voxel and the voxel is covered. The voxel’s AABB is defined by the regular voxel grid.

How do you transform a primitive into a voxel grid?

First you transform the vertex positions of a primitive into a regular eulerian grid (the “voxel grid”) coordinate system in the Vertex Shader stage. Then you rasterize the transformed primitive using a viewport of the same dimensions as one of the 2D projections of the voxel grid.

How is the transformed primitive rasterized in Nvidia?

Then you rasterize the transformed primitive using a viewport of the same dimensions as one of the 2D projections of the voxel grid. Because the orthogonal viewport frustum can cover the voxel grid exactly, and a rasterized pixel position in the render target and its depth value correspond X, Y and Z components of the voxel grid.

How is data written into the voxel grid?

Because the orthogonal viewport frustum can cover the voxel grid exactly, and a rasterized pixel position in the render target and its depth value correspond X, Y and Z components of the voxel grid. Then, finally, map each rasterized fragment onto one or several voxels and write some data into those voxels in the Pixel Shader stage.