Home

Awesome

Conditional ReSTIR Prototype

Introduction

Conditional Resampled Importance Sampling and ReSTIR<br> Markus Kettunen* (NVIDIA), Daqi Lin* (NVIDIA), Ravi Ramamoorthi (NVIDIA and UC San Diego), Thomas Bashford-Rogers (University of Warwick), Chris Wyman (NVIDIA)<br> (*Joint first authors) <br>

This prototype application of conditional ReSTIR defers ReSTIR-based path reuse by one or more bounces. It is based on conditional resampled importance sampling (CRIS) theory, an extension of GRIS [Lin et al. 2022] to conditional path spaces that enables reusing subpaths from unidirectional-sampled paths with correct unbiased contribution weights. Our conditional ReSTIR prototype modifies ReSTIR PT [Lin et al. 2022] with a final gather pass. As in photon mapping, such a final gather reduces blotchy artifacts from sample correlation.

Licensing

The new conditional resampling code in this repository is licensed under the NVIDIA Source Code License. Included NVIDIA dependencies remain licensed under their existing licenses, including: Falcor, DLSS, RTXGI, RTXDI, and NRD.

Falcor also downloads various 3rd party dependencies as git submodules; these have their own licenses.

Prerequisites

How to compile

IMPORTANT: We use git submodules to download dependencies! Downloading the git repository as a .zip (rather than using git clone) will ensure you lack required dependencies, and the build scripts will fail.

After cloning the repository:

Run the demo

Testing with more scenes

To run our code more generally requires:

Mogwai can load a variety of scene types: