Dallin Clark — Graphics Programmer

Real-Time Vulkan Ray Tracer

This project is a Vulkan-based renderer I built from the ground up using C++20 and Vulkan-Hpp, designed to render scenes in real time. It supports real-time RTX shadow rays, physically based materials, area lights, denoising, multiple OBJ models with textures, and more. I built this in order to learn more about modern C++, hardware accelerated raytracing, Vulkan, and current graphics techniques.

Features


  • Built from the ground up in C++20 using Vulkan and Vulkan-Hpp
  • Physically accurate light transport with modern GPU ray tracing pipelines
  • Acceleration structures (BLAS and TLAS) for optimized rendering
  • Programmable ray tracing pipeline with closest-hit and any-hit shaders
  • Supports multiple textured OBJ models with descriptor sets
  • Storage image output with ray generation shaders writing directly to full-resolution images
  • Custom Vulkan wrappers for descriptor pools, shader binding tables, and pipeline layouts
  • Dynamic scene metadata loading and render graph building
  • Live debugging video demonstration included