Next Event Estimation via Reservoir-based Spatio-Temporal Importance Resampling (NEERSTIR)
Abstract
The arrival of dedicated GPU ray-tracing acceleration hardware has renewed demand for Monte Carlo path tracing algorithms optimized for interactive applications. Yet even with hardware support, rendering high quality ray-traced images in real-time remains challenging. We develop a biased Monte Carlo forward path tracing algorithm capable of rendering realistic, globally-illuminated scenes with thousands of dynamic area lights, at interactive frame rates on consumer-grade GPUs, that produces images with significantly lower error and visual noise than other, state-of-the-art techniques. It builds upon Talbot’s “Importance Resampling for Global Illumination,” and extends Bitterli et al.’s “Reservoir-based Spatio-Temporal Importance Resampling” beyond the screen-space computation of direct lighting, to computing forward path traced global illumination via light paths of variable lengths. To reduce variance and improve local lighting estimates, light samples are reused between geometrically coherent, temporally and spatially neighboring light path vertices. Screen-space techniques, and a spherically-projected buffer for enabling sample reuse are explored.
Click here to view my full MSc Thesis Document (via the Simon Fraser University library).
Results: Uncompressed Video Downloads
Due to the noisy nature of real-time ray-tracing, the compression used by online video sharing platforms severely compromises the quality of these videos. The original, high-quality video assets can be downloaded here.
Warning: These are large files! Right-click and select “Save link as” for best results:
- NEERSTIR: Amazon Lumberyard Bistro Scene (Day) (1,132 MB)
- NEERSTIR: Amazon Lumberyard Bistro Scene (Day), with SVGF denoising (191 MB)
- NEERSTIR: Amazon Lumberyard Bistro Scene (Night) (708 MB)
- NEERSTIR: Amazon Lumberyard Bistro Scene (Night), with SVGF denoising (187 MB)
These videos show the 100 second camera path included with the Amazon Lumberyard Bistro scene. For all videos, both algorithms were configured to render N = 1 light path samples of V = 3 vertices (i.e. two bounces) per pixel. For the NEERSTIR algorithm, M = 16 sample candidates were drawn during RIS, temporal and spatial reuse were enabled, with k = 5 neighbors drawn during each of the n = 2 iterations of spatial reuse. These parameters were chosen as they result in reasonable real-time frame rates for the NEERSTIR algorithm (approximately 60ms per frame).
Denoised results are obtained by applying the Spatiotemporal Variance-Guided Filtering (SVGF) denoiser. The SVGF denoiser was configured to perform 6 iterations with a feedback parameter of −1, and incurs an additional cost of approximately 4ms per frame for both algorithms”