jan novák

Progressive Virtual Beam Lights

Jan Novák, Derek Nowrouzezahrai, Carsten Dachsbacher, and Wojciech Jarosz

Computer Graphics Forum (Proceedings of EGSR 2012), vol. 31, no. 4

Featured on the proceedings back cover

Progressive Virtual Beam Lights - teaser

Full global illumination in the BUDDHA, CARS, and SMOKY ROOM scenes computed using progressive VBLs and VPLs for surface and medium indirect illumination, and progressive photon beams and progressive photon mapping for caustics.

abstract

A recent technique that forms virtual ray lights (VRLs) from path segments in media, reduces the artifacts common to VPL approaches in participating media, however, distracting singularities still remain. We present Virtual Beam Lights (VBLs), a progressive many-lights algorithm for rendering complex indirect transport paths in, from, and to media. VBLs are efficient and can handle heterogeneous media, anisotropic scattering, and moderately glossy surfaces, while provably converging to ground truth. We inflate ray lights into beam lights with finite thicknesses to eliminate the remaining singularities. Furthermore, we devise several practical schemes for importance sampling the various transport contributions between camera rays, light rays, and surface points. VBLs produce artifact-free images faster than VRLs, especially when glossy surfaces and/or anisotropic phase functions are present. Lastly, we employ a progressive thickness reduction scheme for VBLs in order to render results that converge to ground truth.

downloads

publication

video

presentation

citation

video

bibtex

@article{Novak2012VBL,
    title       = {Progressive Virtual Beam Lights},
    author      = {Jan Nov\'{a}k and Derek Nowrouzezahrai and Carsten Dachsbacher and Wojciech Jarosz},
    journal     = {Computer Graphics Forum (Proceedings of EGSR 2012)},
    volume      = {31},
    number      = {4},
    month       = jun,
    year        = {2012},
    pages       = {1407--1413},
    publisher   = {John Wiley \& Sons, Inc.},
    address     = {New York, NY, USA},
}