Efficient Unbiased Volume Path Tracing on the GPU

We present a set of optimizations that improve the performance of high-quality volumetric path tracing. We build upon unbiased volume sampling techniques, i.e., null-collision trackers, with voxel data stored in an OpenVDB tree. The presented optimizations achieve an overall 2x to 3x speedup when implemented on a modern GPU, with an approximately 6.5x reduction in memory footprint. The improvements primarily stem from a multi-level digital differential analyzer (DDA) to step through a grid of precomputed bounds; a replacement of the top levels of the OpenVDB tree with a dense indirection texture, similar to virtual textures, while preserving some sparsity; and quantization of the voxel data, encoded using GPU-supported block compression. Finally, we examine the isolated effect of our optimizations, covering stochastic filtering, the use of dense indirection textures, compressed voxel data, and singleversus multi-level DDAs.

Read the chapter