In this series, we enhance a Vulkan renderer with ray tracing features to implement real-time pixel-perfect shadows (with and without transparency) and a bonus reflection effect. You will work with provided scaffolded code (based on the Vulkan Tutorial) and fill in key shader functions following step-by-step instructions.
Use Vulkan dynamic rendering (no pre-defined render passes) and verify it with RenderDoc.
Create bottom-level and top-level Acceleration Structures (BLAS and TLAS) for ray tracing.
Implement ray query based shadow rays (first with all-opaque geometry, then with alpha-test transparency).
Debug/inspect the acceleration structures in Nsight Graphics.
(Bonus) Implement ray query based reflections.
Prerequisites: This series targets intermediate Vulkan programmers. We assume you have completed the basic Vulkan Tutorial (graphics pipeline, descriptor sets, etc.). If not, you can still follow along conceptually. A Windows machine with up-to-date Vulkan SDK (1.4.311), a GPU supporting ray tracing (Vulkan Ray Query), plus RenderDoc and Nsight Graphics is provided.