Thanks to visit codestin.com
Credit goes to GitHub.com

Skip to content

Vulkan Path Tracer. Physically based path tracer made in Vulkan with Ray Tracing Pipeline.

License

Notifications You must be signed in to change notification settings

Zydak/Vulkan-Path-Tracer

Repository files navigation

Vulkan-Path-Tracer

Sponza

Physically based offline path tracer made in Vulkan with Ray Tracing Pipeline extension. It uses energy conserving BSDF with Diffuse, Dielectric, Metallic and Glass lobes + volumetric scattering. Renders can also be saved as png images. There's also a small writeup on how exactly the participating media is being rendererd if you're interested.

System Requirements

  • Windows 10 with MSVC or Linux with GCC (Only debian 12 with GCC 12.2 is tested)
  • Either NVIDIA RTX 2000+ series or AMD RX 6000+ series to support all of the extensions below. You may check whether they're present on your device here, maybe it's possible to run on some older hardware.
    • VK_KHR_ray_query
    • VK_KHR_acceleration_structure
    • VK_KHR_ray_tracing_pipeline
    • VK_KHR_swapchain
    • VK_KHR_deferred_host_operations

Building

Prerequisites

Windows

git clone --recursive https://github.com/Zydak/Vulkan-Path-Tracer
cd Vulkan-Path-Tracer
mkdir build
cd build
cmake .. -DCMAKE_POLICY_VERSION_MINIMUM=3.5

Then open generated Visual Studio solution and build.

Linux

git clone --recursive https://github.com/Zydak/Vulkan-Path-Tracer
cd Vulkan-Path-Tracer
mkdir build
cd build
cmake .. -DCMAKE_POLICY_VERSION_MINIMUM=3.5
make

Executable will be in build/Debug/VulkanPathTracer.

Features Overview

Gallery

References

Papers Implemented

Models