Volumetric data structures for real-time ray tracing
Summary
Volumetric effects such as clouds, explosions, smoke, and fog are important scene elements for computer games. While these can be efficiently handled in a rasterizer, path tracers typically struggle to render them efficiently. In this thesis we provide the required prior knowledge to think about the different trade-offs of volume data structures, and we provide a specialized implementation for compressed density data. The resulting data structure reduces the voxel data memory footprint by a factor of 8 to 16 times over 16-bit floating point values. This is achieved by utilizing a novel method of storing density data in block-compressed textures and deduplicating homogeneous nodes. These methods allow us to store animation sequences in game-ready asset sizes and render them at real-time frame rates.