|
Vulkan Schnee 0.0.1
High-performance rendering engine
|
Most renderer shader resources use shared binding constants across C++ and GLSL.
The system is centered around Engine/include/Engine/Renderer/ShaderBindingsDef.hpp and Engine/include/Engine/Renderer/GpuDataLayouts.hpp.
Shaders include the generated GLSL bindings header before declaring bound resources.
Some legacy and particle shaders still hard-code numeric bindings. Current examples include Engine/shaders/TrailPrepareDraw.comp, Engine/shaders/ParticleSimulate.comp, and Engine/shaders/TrailUpdate.comp.
C++ defines binding enums through a macro list.
GLSL using the generated bindings header uses BINDING_ constants.