jan novák

Progressive Visibility Caching for Fast Indirect Illumination

Justus Ulbrich, Jan Novák, Hauke Rehfeld, and Carsten Dachsbacher

Proceedings of International Workshop on Vision, Modeling, and Visualization (VMV'13)

Our visibility caching significantly speeds up tracing of secondary rays, here from 0.15 MRays/s (reference) to 0.70 MRays/s (with the visibility cache). The images were rendered using path tracing where some of the rays (highlighted by green in the illustrations; solid and dashed lines represent path segments and shadow rays, resp.) were traced using our visibility cache with 2000 shadow maps achieving 4.7× higher throughput of secondary rays per second.


Rendering realistic images requires exploring the vast space of all possible paths that light can take between emitters and receivers. Thanks to the advances in rendering we can tackle this problem using different algorithms; but in general, we will likely be evaluating many expensive visibility queries. In this paper, we leverage the observation that certain kinds of visibility calculations do not need to be resolved exactly and results can be shared efficiently among similar queries. We present a visibility caching algorithm that significantly accelerates computation of diffuse and glossy inter-reflections. By estimating the visibility correlation between surface points, the cache automatically adapts to the scene geometry, placing more cache records in areas with rapidly changing visibility. We demonstrate that our approach is most suitable for progressive algorithms delivering approximate but fast previews as well as high quality converged results.








  title     = {Progressive Visibility Caching for Fast Indirect Illumination},
  author    = {Justus Ulbrich and Jan Nov{\'a}k and Hauke Rehfeld and Carsten Dachsbacher},
  booktitle = {Proceedings of the Vision, Modeling, and Visualization Workshop},
  editor    = {Michael M. Bronstein and Jean Favre and Kai Hormann},
  year      = {2013},
  pages     = {203--210},
  location  = {Lugano, Switzerland},
  publisher = {Eurographics Association}