ShaderDocument struct
Lowered ".shader" document — directives plus raw (unpreprocessed) per-stage GLSL line streams.
Public variables
- String ProgramName
- Program name from the "program" directive.
-
std::
vector<String> Variants - Variant names; the unnamed base variant is always
Variants[0](empty name). -
std::
vector<TextureDirective> Textures - Sampler texture-unit assignments (explicit hints and the implicit canvas TEXTURE).
-
std::
vector<SourceLine> Prelude - Shared globals emitted before both stage bodies.
-
std::
vector<SourceLine> VertexLines - Raw (unpreprocessed) vertex-stage GLSL line stream.
-
std::
vector<SourceLine> FragmentLines - Raw (unpreprocessed) fragment-stage GLSL line stream.
-
std::
vector<FixedFunctionBlock> FixedFunctionBlocks - Captured "fixed_function" blocks (empty for shaders with no console fixed-function implementation); a batched twin shares its primary's blocks.
-
std::
uint32_t RenderModes - Bitmask of RenderModeMask flags (
0when no "render_mode" is declared). - bool HasVertexStage
- Whether the document declares a vertex stage.
- bool HasFragmentStage
- Whether the document declares a fragment stage.