This project is an engine where you can create/test new shaders in real-time physically based ray tracing system. The main idea is that users can test their own integrators in predefined environment with assets like: meshes, materials, lights and textures. The Vulkan pipeline is abstracted in a shaders form and the only concern for a user is providing either their own scene description or using already existing one.
Check out discord #general for more info or help.
- Download VulkanSDK and place it in
C:/VulkanSDK/x.x.x.x/
. - Run
install.bat
script to download all necessary libraries. - For shaders compliation you will need
python
andglslc
available form the shell level.glslc
can be found for instance inC:/VulkanSDK/x.x.x.x/Bin32/glslc.exe
.
Add vulkan path C:/VulkanSDK/x.x.x.x/Bin32
to the Path
variable
System variable needed for the project
VULKAN_SDK
VK_SDK_PATH
C++17 is needed to compile the project.
The scene description and assets are taken from GLSL-PathTracer project [4]. The whole dataset can be downloaded from link.
Download the assets folder and place it in PBRVulkan/Assets/Scenes/
. The folder strucutre has to be as follows:
PBRVulkan/Assets/Scenes/
bedroom/
coffee_cart/
HDR/
bedroom.scene
coffee_cart.scene
...
[0] Vulkan Tutorial
[1] Vulkan Ray Tracing Tutorial
[2] PBR Book
[4] GLSL-PathTracer
[5] RayTracingInVulkan