Abstract
We present real-time stochastic lightcuts, a real-time rendering method for scenes with many dynamic lights. Our method is the GPU extension of stochastic lightcuts [Yuksel 2019], a state-of-art hierarchical light sampling algorithm for offline rendering. To support arbitrary dynamic scenes, we introduce an extremely fast light tree builder. To maximize the performance of light sampling on the GPU, we introduce cut sharing, a way to reuse adaptive sampling information in light trees in neighboring pixels.
Our real-time stochastic lightcuts method renders a scene with unbiased sampling of direct lighting from 24,782 emissive triangles with a sampling time of 11.5 ms (including tracing shadow ray and lighting computation) and a total frame time of 23 ms on a NVIDIA RTX 2080 card, using 4 light samples per pixel. The screen resolution is 1920 × 1080. SVGF [Schied et al. 2017] and TAA are applied to filter the sampling result.
Equal sampling time (excluding construction time) comparison between (a) a real-time implementation of Adaptive Tree Splitting (ATS) [Moreau et al. 2019] and (b) our method, using a dynamic lighting condition with 100,000 VPLs in the Crytek Sponza scene.
Video
Acknowledgements
We thank Morgan McGuire for providing the remastered version of Amazon Lumberyard Bistro we used in our tests and the anonymous reviewers for their helpful feedback.
BibTeX
@article{Lin2020,
author = {Daqi Lin and Cem Yuksel},
title = {Real-Time Stochastic Lightcuts},
journal = {Proc. ACM Comput. Graph. Interact. Tech. (Proceedings of I3D 2020)},
year = {2020},
volume = {3},
number = {1},
numpages = {18},
location = {San Francisco, CA, USA},
url = {http://doi.acm.org/10.1145/3384543},
doi = {10.1145/3384543},
publisher = {ACM Press},
address = {New York, NY, USA},
}