|
Vulkan Schnee 0.0.1 (22840dc8)
High-performance rendering engine
|
Most renderer shader resources use shared binding constants across C++ and GLSL.
The system is centered around engine-internal shader binding definitions that generate shared C++ enums and GLSL constants.
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.