Vulkan Raytracer

Overview

Vulkan Raytracer is a graphics rendering project focused on implementing real-time ray tracing using the Vulkan API. The project began as a basic raytracer and evolved into a full-fledged path tracer leveraging Vulkan’s ray tracing extension to achieve realism through recursive light simulation.

Key Features

  • Acceleration Structures: Reduces computational overhead by minimizing unnecessary ray-triangle intersection tests.
  • Temporal Anti-Aliasing: Achieved through subpixel jittering and sample accumulation across frames.
  • Efficient Sampling: All samples are accumulated inside the RayGen shader, avoiding costly multi-pass ray tracing.
  • Any-Hit Shader: Discards intersections based on material transparency, enabling support for alpha cutouts.
  • Path Tracing Upgrade: Implements recursion in the RayGen shader, supporting multiple light bounces per frame.

Performance Notes

  • Uses direct sample accumulation in the RayGen shader for speed.
  • Reduces unnecessary shader invocations by handling transparency early.
  • Optimized for experimental research and educational rendering projects.

Repository

You can explore the source code and contributions on the Vulkan Raytracer GitHub repository.