Convert a modern Vulkan 1.4 rasterization application into a fully functional ray tracer through 8 progressive, compilable phases, then explore 18+ focused samples covering reflections, motion blur, ray queries, callable shaders, opacity micro-maps, and more. Built on the VK_KHR_acceleration_structure, VK_KHR_ray_tracing_pipeline, and VK_KHR_ray_query extensions.
Prerequisites
- nvpro_core2 (Vulkan helpers)
- Vulkan 1.4+ SDK — select Volk headers during installation
- CMake 3.18+
- A GPU and driver supporting Vulkan ray tracing
Build
From an empty parent directory that will hold both repos side-by-side:
git clone https://github.com/nvpro-samples/nvpro_core2.git
git clone https://github.com/nvpro-samples/vk_raytracing_tutorial_KHR.git
cd vk_raytracing_tutorial_KHR
cmake -B build -S .
cmake --build build -j 8Compiled binaries are placed in the _bin directory.
The legacy pre-v2.0 tutorial is on the master branch.
- vk_gltf_renderer — Production-ready Vulkan ray/path tracer with full glTF 2.0 support, IBL, denoising, and post-processing.
- vk_mini_samples — Comprehensive collection of focused Vulkan samples beyond ray tracing.



