Dissertation Idea
I've been thinking a lot about my dissertation topic. this blog post covers one of the main ideas I have






Single Bounce DDGI
Path Traced GI
How can ReSTIR, supersampling, and ray reconstruction be combined with multi-bounce dynamic diffuse global illumination to achieve comparable quality to a low sample path-traced indirect lighting, while maintaining real-time performance in interactive game scenes?
Main Goal: main contribution for this project is taking DDGI a step further from the original implementation of a single bounce global illumination technique to a multi-bounce, thereby enhancing quality.
This project aims to enhance light propagation within dynamically lit scenes. While single-bounce DDGI captures primary indirect illumination, it inherently suffers from an unnatural early termination, leading to unnaturally dark and flat lighting in certain area like corners.
By implementing a multi-bounce path tracing strategy, it will allow for a more natural distribution of light throughout the scene, allowing light to propagate more realistically.
With a multi Bounce GI Secondary (and further) colour can bleed accurately on surfaces, further grounding the scene in realism.
In a typical Implementation of Monte Carlo path tracing, Noise is introduced due to its sparse random sampling, while temporal accumulation reduces this noise over time, it often leads to visible artifacts during camera or object motion unless enough frames are accumulated. To combat This, I will implement Spatiotemporal Reservoir Resampling (ReSTIR), leading to a significantly more coherent and visually stable raw GI within the first few frames.


Lastly Denoising would be handled through NVIDIA’s Ray Reconstruction for state of the art, AI-driven denoising, followed by NVIDIA's DLSS Super Resolution for upscaling from a lower internal rendering resolution.
Visual Quality comparison between vanilla DDGI vs My implementation.
Comparison performance and visual quality between Without Restir Vs with Restir.
Rendering Time comparison between: My implementation, vanilla DDGI implementation and Full path traced image.
How does it scale across bigger scenes ?
The Rendering Equation: Introduced by James T. Kajiya, the rendering equation is an integral equation that encapsulates a wide variety of rendering algorithms, allowing them to be viewed as approximations to a single, general formulation. It also forms the foundation of physically based rendering.
Monte Carlo Path Tracing: introduced in the same paper is an algorithm that simulated light transport by tracing random rays from the camera into the scene.
Since then, there have been a few notable optimisations necessary for adapting this algorithm to real time:
Importance Sampling: instead of tracing hundreds of rays in all direction this technique shoots rays towards directions that are more likely to contribute light, this allows for a cleaner image.
Temporal Accumulation: This technique helps reduce noise by blending past rendered results with the current frames so over time the image can be filled
Blue Noise: instead of using the typical White noise for sampling random points a blue noise texture is used this produces artifacts that are harder to see and are easier to denoise.
DDGI: Dynamic Diffuse global illumination is a prob based global illumination solution introduced by Nvidia in 2019 with the aim of producing Fast, noise Free approximate global illumination, in contrast to Montecarlo raytracing DDGI probes are placed either algorithmically or manually around the scene to capture indirect diffuse information.
Since its release there have been a few extensions, a notable recent introduction was with the implementation of Bidirectional path tracing using DDGI which casts rays from the camera into the scene and from the scene into the camera, this innovation Also Implements ReSTIR for better Sampling.
ReSTIR: Reservoir-based Spatio-Temporal Importance Resampling extends importance sampling by reusing and resampling candidate light paths across space and time. This significantly improves the efficiency of light transport simulation in real-time path tracing, allowing complex lighting scenarios with fewer samples per pixel. This technology was originally developed to only handle direct lighting but has been extended to support Path tracing.
Neural Upscaling and Denoising: NVIDIA’s Suite of AI technologies have further accelerated real-time rendering. By allowing developers to render a low resolution then with neural networks trained for super-resolution and denoising, high-quality results can be achieved at real-time frame rates. This approach can be used in a path tracing implementation to easily improve performance whilst reducing noise.