ABSTRACT

Procedural volume primitives describe the contents with algorithms controlled by a set of parameters. Rendering a single volume primitive is interesting, but a system that can render many and varied overlapping volume primitives is much more useful. One way is to fill a sparse volume with volume primitives and ray-march it from the eye. There have been several advancements in rendering light scattering in homogeneous media, enabling effects like skies, uniform smoke, and fog. The metavoxel enables us to efficiently fill and light the volume. Most importantly, it allows us to avoid working on empty metavoxels. Ray-marching multiple metavoxels one at a time can be efficient than ray-marching a larger volume. The metavoxel localizes the sample points to a relatively small volume, potentially improving cache hit rates and minimizing expensive off-chip bandwidth. Many of the displaced sphere's properties can be animated over time: position, scale, opacity, color. This is a similar paradigm to 2D billboards, only with 3D volume primitives.