List of features:
- software raytracing using compute shaders
- support for multiple lights (up to 4 for now)
- fully raytraced shadows with soft shadows
- support for omni and directional lighting (point and area)
- fully integrated AMD FX Shadows Denoiser https://gpuopen.com/fidelityfx-denoiser
- tweaking light size will soften the shadow
- upscaling with multiple modes and resolution scale factors
- https://gpuopen.com/fidelityfx-superresolution-2
- volumetric fog with multiple lights support in compute shader with raytraced shadows
- implementation based on Bart Wronski's idea from SIGGRAPH 2014 : https://bartwronski.com/publications/
- bloom fully implemented in compute shader
- based on http://www.iryoku.com/next-generation-post-processing-in-call-of-duty-advanced-warfare
- 5 downscale passes into mips of a single texture with temporally stable box filtering
- 5 upscale passes back to original resolution with tent filtering
- whole bloom pass, with apply (on RTX3070) takes less than 0.3ms on 1080p resolution
- ssao generation using compute shader (fragment shader option also available)
- simple cheap blur
- less then 0.6ms in total on RTX3070
- PBR technique for lighting and tweakable basic SSAO for ambient occlusion
- GLTF models
- SPIR-V reflection and VMA for shader reflection and GPU memory allocation
- ImGui https://github.com/ocornut/imgui