Adding DLSS Support to Hazel Engine

In my ongoing work on the Hazel Engine, I recently integrated NVIDIA's Deep Learning Super Sampling (DLSS). This addition enhances the engine's ability to provide high-quality visuals while maintaining strong performance. The DLSS integration involved both leveraging the NVIDIA SDK and modifying the rendering pipeline to accommodate the new upscaling technology.

Technical Overview

Despite how there are many arguments against DLSS and other upscaling techniques, especially about how it's not temprally stable, it's still a technology that's gaining popularity in the gaming industry. As long as the developers don't rely on it too heavily as a primary optimization. DLSS uses AI-based upscaling to deliver higher frame rates while rendering at a lower resolution. To implement this, I had to add support for DLSS within the Vulkan renderer, configure the necessary frame buffer inputs, and ensure the game engine could handle both native and DLSS modes seamlessly. The implementation required extensive use of the NVIDIA DLSS SDK, where I created custom passes to handle the inputs for DLSS, including motion vectors, depth, color, and more.

Performance Impact

After the integration, the engine demonstrated a significant boost in performance, particularly in graphically intensive scenes. For example, without compromising too much visual fidelity. This performance boost allows the engine to handle higher resolutions and complex visual effects with much smoother frame rates.

Challenges Faced

One of the major challenges wasintegrating motion vectors from the geometry and camera required fine-tuning to ensure that ghosting and artifacts were minimized, this is still an ongoing area of research too.

Future Improvements

Moving forward, I plan to experiment with how DLSS may interact with Restir path tracing especially when it's denoised. Will this be the magic spell for playable path traced games?

Conclusion

The integration of DLSS into the Hazel Engine has significantly improved the overall performance, especially in demanding scenes. The ability to upscale while maintaining visual fidelity is a game-changer, especially for modern GPUs. This successful implementation of DLSS opens the door for more advanced rendering techniques in Hazel, keeping it on par with the latest advancements in game engine technology.

Images

Here are some images that demonstrate the results of DLSS at MaxQuality mode.
Click on an image to view it in bigger size.