Hybrid GI solution, based on DDGI ( include Ray-Tracing and SDF-Tracing )
Hybrid GI solution, based on DDGI ( include Ray-Tracing and SDF-Tracing )
The project is a Hybrid GI solution, partly inspired by Lumen and DDGI. The main core idea is to provide a complete GI solution (including Indirect-Light, Infinite-Bounce, Emissive-Lighting, Glossy-Reflection, Shadow, AO) that can run on both Raytracing-supported and non-raytracing hardware. Due to the shortage of time, there are still some performance issues in this project, but as a throwaway, I believe it can provide some new ideas to most of the people who are interested in GI.
Left is SDF-On, Right is Raytracing-On
Game
appThis project is made with lots of awesome open-source code, they are
RTXGI, the fully raytracing DDGI implementation.
cereal, A C++11 library for serialization.
entt, high performance ECS library
glad, an vulkan/opengl function loader
glfw, open source, multi-platform library for OpenGL, OpenGL ES and Vulkan application development
imgui, is a bloat-free graphical user interface library for C++
libacc, About Acceleration structure library (BVH-, KD-Tree) with basic parallel construction
hybrid-rendering, provide raytracing and denoise.
spriv-cross, SPIRV-Cross is a tool designed for parsing and converting SPIR-V to other shader languages.
tracer, c++ crash tracer.
glm, OpenGL Mathematics (GLM) is a header only C++ mathematics library for graphics software.
spdlog, Very fast, header-only/compiled, C++ logging library
stb, single-file public domain (or MIT licensed) libraries for C/C++
flax-engine, open source game engine. provide the idea how to generate and trace sdf.
Also Paper Reference