class final
ShaderBuilderConfigures compile-time shader parameters using #define macros.
Constructors, destructors, conversion operators
-
ShaderBuilder(cubos::
core:: gl:: RenderDevice& renderDevice, const cubos:: core:: gl:: Stage stage, std::string contents) - Creates a shader builder.
Public functions
- auto with(const std::string& defineName) -> ShaderBuilder&
- Defines a parameter with no value.
- auto with(const std::string& defineName, const std::string& defineValue) -> ShaderBuilder&
- Defines a parameter with a value.
-
auto build() const -> cubos::
core:: gl:: ShaderStage - Compiles a shader from the source code stored in the builder.
Function documentation
cubos:: engine:: ShaderBuilder:: ShaderBuilder(cubos:: core:: gl:: RenderDevice& renderDevice,
const cubos:: core:: gl:: Stage stage,
std::string contents)
Creates a shader builder.
Parameters | |
---|---|
renderDevice | Render device used to create the shader. |
stage | Shader stage to create. |
contents | Shader source code. |
ShaderBuilder& cubos:: engine:: ShaderBuilder:: with(const std::string& defineName)
Defines a parameter with no value.
Parameters | |
---|---|
defineName | Parameter name to define. |
Returns | This shader builder (for chaining calls). |
ShaderBuilder& cubos:: engine:: ShaderBuilder:: with(const std::string& defineName,
const std::string& defineValue)
Defines a parameter with a value.
Parameters | |
---|---|
defineName | Parameter name to define. |
defineValue | Parameter value. |
Returns | This shader builder (for chaining calls). |
cubos:: core:: gl:: ShaderStage cubos:: engine:: ShaderBuilder:: build() const
Compiles a shader from the source code stored in the builder.
Returns | Shader stage. |
---|