A personal playground for trying/testing out various ray-tracing techniques in Vulkan, utilizing the Khronos hardware-accelerated ray-tracing extensions. It currently supports metallic-roughness PBR, ray-cone texture LOD, alpha-masked transparency, single-layer alpha-blended decals, and blue-noise masks for soft-shadows and rough-reflections.
Place .glb-formatted glTF scenes in the "assets" folder, and be sure to compile the shaders in the "shaders" folder to SPIR-V. Do note: the glTF loader is currently intended to load scenes that are repacked with gltfpack, with mesh-quantization disabled and textures transcoded to a Basis Universal format within a KTX container.
The spatiotemporal blue-noise texture included in this repository was taken from Nvidia's SpatiotemporalBlueNoiseSDK, and was converted to the Khronos Texture format with toktx. The Sponza scene shown in the screenshots below have been taken from Intel's Graphics Research Samples.