GlslToCppResult struct
#include <derCompiler/GlslToCpp.h>
Outcome of transpiling one fragment shader to C++.
Public variables
- bool Supported
truewhen the shader fits the supported subset and Code was emitted- String UnsupportedReason
- Why the shader was declined (only meaningful when Supported is
false). - String Code
- The emitted C++ (a
<Program>_Uniformsstruct plus the fragment function[s]). - bool HasComputeVaryings
truewhen a<Program>_ComputeVaryings(void*, const std::uint8_t*)was emitted-
std::
vector<String> ConstVaryingNames - Names of the constant-varying fields added to
<Program>_Uniforms.
Variable documentation
bool ShaderCompiler:: GlslToCppResult:: HasComputeVaryings
true when a <Program>_ComputeVaryings(void*, const std::uint8_t*) was emitted
Set when the fragment reads at least one per-instance-constant varying. The device calls the function once per instance to fill those varyings (struct fields) from the bound instance block before running the fragment.
std:: vector<String> ShaderCompiler:: GlslToCppResult:: ConstVaryingNames
Names of the constant-varying fields added to <Program>_Uniforms.
They live in the same struct as the loose uniforms but are filled by <Program>_ComputeVaryings (not by ResolveUniform), so the caller excludes them from the loose-uniform field list.