1Disney Research Zürich2Disney Interactive Studios3University of Bern
In ACM Transactions on Graphics (Proceedings of ACM SIGGRAPH Asia 2011) Featured in the proceedings inside cover and the papers fast forward video!
The Cars, Disco, and FlashLights scenes rendered using progressive photon beams for both homogeneous and heterogeneous media. We generate a sequence of independent render passes (middle) where we progressively reduce the photon beam radii. This slightly increases variance in each pass, but we prove that the average of all passes (bottom) converges to the ground truth.
Abstract
We present progressive photon beams, a new algorithm for rendering complex lighting in participating media. Our technique is efficient, robust to complex light paths, and handles heterogeneous media and anisotropic scattering while provably converging to the correct solution using a bounded memory footprint. We achieve this by extending the recent photon beams variant of volumetric photon mapping. We show how to formulate a progressive radiance estimate using photon beams, providing the convergence guarantees and bounded memory usage of progressive photon mapping. Progressive photon beams can robustly handle situations that are difficult for most other algorithms, such as scenes containing participating media and specular interfaces, with realisxtic light sources completely enclosed by refractive and reflective materials. Our technique handles heterogeneous media and also trivially supports stochastic effects such as depth-of-field and glossy materials. Finally, we show how progressive photon beams can be implemented efficiently on the GPU as a splatting operation, making it applicable to interactive and real-time applications. These features make our technique scalable, providing the same physically-based algorithm for interactive feedback and reference-quality, unbiased solutions.
@article{jarosz11progressive,
author = {Wojciech Jarosz and Derek Nowrouzezahrai and Robert Thomas and Peter-Pike Sloan and Matthias Zwicker},
title = {Progressive Photon Beams},
journal = {ACM Transactions on Graphics (Proceedings of ACM SIGGRAPH Asia 2011)},
volume = {30},
number = {6},
year = {2011},
month = dec
}