REAL-TIME RAY TRACING AT VULKAN
Personal Project, May 2022 – February 2023
The purpose of this project is to develop the Real-Time Ray Tracing and see how cool it is. I started this project because the real- time ray tracing is a hot topic in the recent years and I had a opportunity to find the resource to learn it wit Vulkan.

FULL PATH REAL-TIME RAY TRACING
To start the project, I set up the basic vulkan and add the acceleration structure for ray tracing. With ray generator, hit and miss shader, I can do the full path ray trace. which shoot the ray and compute color when hit.

DENOISE
Adding the denoise to smooth out the noise. I use the compute shade to average nearest 25 pixels and filter out the edge pixels at 5 times.

SHADOW AND AO
Without running the full ray tracing and extract shadow and adding it back to the scene, the scene look very nice with soft, blurred shadow. And the good part is the ambient occlusion also come within ray trace.

FEATURE
For the future of this project, I will like to move this feature to DirectX 12 and continue add more relate features. Don't give me wrong, Vulkan is not that hard to use for me and GLSL is always nice to use. I just want to maintain all my work in one place.

REF
Holger Dammertz, Daniel Sewtz, Johannes Hanika, Hendrik P.A. Lensch. Edge-Avoiding À-
Trous Wavelet Transform for fast Global Illumination Filtering. 2010. Ulm University,
Germany. https://jo.dreggn.org/home/2010_atrous.pdf
Christoph Schied, Anton Kaplanyan, Chris Wyman, Anjul Patney, Chakravarty R. Alla
Chaitanya, John Burgess, Shiqiu Liu, Carsten Dachsbacher, Aaron Lefohn, and Marco Salvi.
Spatiotemporal Variance-Guided Filtering: Real-Time Reconstruction for Path-Traced Global
Illumination 2017. https://cg.ivd.kit.edu/publications/2017/svgf/svgf_preprint.pdf
Ray Tracing Gems II: Next Generation Real-Time Rendering with DXR, Vulkan, and OptiX