[Runtime Feature]: Area ReSTIR Implementation (improved visuals)
What is the context of the feature/improvement?
ReSTIR in Remix is a bit lacking for real-time rendering. It was a massive improvement at the time it released, however there are better options now. I will expand on this in the next section.
Please describe the feature/improvement?
Area ReSTIR is one of the most promising replacements from the research I've performed. It allows better/proper Depth of Field rendering, and is competent enough to even perform caustics in a 1 sample per pixel render:
At lower FPS & DLSS settings, the current ReSTIR implementation falls apart. It loses the majority of its detail and becomes a shimmery mess. Area ReSTIR should be an improvement in this regard as well. Since it produces so much more detail per sample, scaling to lower resolutions shouldn't be as much of an issue. Additionally it appears to be more temporally coherent.
The sample video explains all of this: https://www.youtube.com/watch?v=znwU0X6I5q4
It is worth noting that Area ReSTIR also comes with a performance hit. 10 ms vs 14 ms in one of the samples in that video. This could be accounted for by lowering DLSS settings further, lowering the sample count, or various other factors (that you guys know more about). In my opinion, this is worth the hit for the visual quality improvement.
What would be your solution? (optional)
Add Area ReSTIR in addition to the current ReSTIR implementation, or go as far as to replace it.
Having both would allow users to select the original ReSTIR implementation to improve performance at the cost of visual quality, but it would of course be more difficult to maintain both at once.
Version
0.5.1
Media
https://www.youtube.com/watch?v=znwU0X6I5q4