Computing Science MSc Thesis, Simon Fraser University (2021)

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).

Thesis Images

Thesis Videos

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, uncompressed video assets are provided here but may be slow to load! Download links are provided below.

Note: These are large files: Right-click and select “Save link as” for best results:

These videos show the 100 second camera path included with the Amazon Lumberyard Bistro scene. All videos were rendered with N = 1 light path samples of V = 3 vertices (i.e. two bounces) per pixel. The NEERSTIR algorithm uses M = 16 sample candidates drawn via RIS, temporal reuse, and n = 2 iterations of spatial reuse from k = 5 neighbors.

Denoised results are obtained by applying the Spatiotemporal Variance-Guided Filtering (SVGF) denoiser.

Comparison of NEERSTIR vs Moreau et al.: 

Summary of Work:

Scroll to top