Reduced Aggregate Scattering Operators for Path Tracing
Date
2016Metadata
Show full item recordAbstract
Aggregate scattering operators (ASOs) describe the overall scattering behavior of an asset (i.e., an object or volume, or collection thereof) accounting for all orders of its internal scattering. We propose a practical way to precompute and compactly store ASOs and demonstrate their ability to accelerate path tracing. Our approach is modular avoiding costly and inflexible scene-dependent precomputation. This is achieved by decoupling light transport within and outside of each asset, and precomputing on a per-asset level. We store the internal transport in a reduced-dimensional subspace tailored to the structure of the asset geometry, its scattering behavior, and typical illumination conditions, allowing the ASOs to maintain good accuracy with modest memory requirements. The precomputed ASO can be reused across all instances of the asset and across multiple scenes. We augment ASOs with functionality enabling multi-bounce importance sampling, fast short-circuiting of complex light paths, and compact caching, while retaining rapid progressive preview rendering. We demonstrate the benefits of our ASOs by efficiently path tracing scenes containing many instances of objects with complex inter-reflections or multiple scattering.
BibTeX
@article {10.1111:cgf.13043,
journal = {Computer Graphics Forum},
title = {{Reduced Aggregate Scattering Operators for Path Tracing}},
author = {Blumer, Adrian and Novák, Jan and Habel, Ralf and Nowrouzezahrai, Derek and Jarosz, Wojciech},
year = {2016},
publisher = {The Eurographics Association and John Wiley & Sons Ltd.},
ISSN = {1467-8659},
DOI = {10.1111/cgf.13043}
}
journal = {Computer Graphics Forum},
title = {{Reduced Aggregate Scattering Operators for Path Tracing}},
author = {Blumer, Adrian and Novák, Jan and Habel, Ralf and Nowrouzezahrai, Derek and Jarosz, Wojciech},
year = {2016},
publisher = {The Eurographics Association and John Wiley & Sons Ltd.},
ISSN = {1467-8659},
DOI = {10.1111/cgf.13043}
}