Skip to content

WilliamLewww/vulkan_ray_tracing_minimal_abstraction

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Vulkan Ray Tracing with Minimal Abstraction

ray_pipeline uses the ray tracing pipeline to render the final image.

ray_query uses the graphics pipeline along with ray querying to render the final image.

headless generates a ray traced image without creating a window or requiring a surface.

Important Note

Make sure the VK_KHR_ray_query and VK_KHR_ray_tracing_pipeline extensions are available on your device!

Even if you have a compatible RTX / RX graphics card, your drivers may not have the extension available.

To see if the extension is available, you can use the vulkaninfo binary.

vulkaninfo

Dependencies

Windows

Linux

  • X11 (not required for headless example)
  • GCC

Building

Navigate to a subproject:

cd vulkan_ray_tracing_minimal_abstraction/ray_pipeline
# or
#   cd vulkan_ray_tracing_minimal_abstraction/ray_query
# or
#   cd vulkan_ray_tracing_minimal_abstraction/headless

Build on Linux or Windows through CMake:

mkdir build
cd build
cmake ..
# with validation layers enabled:
#   cmake .. -D VALIDATION_ENABLED=1

# on Linux
make

# on Windows:
#   cmake --build .

Image generated from headless example:

headless