Module dagon.graphics.shader
Provides classes and utilities for OpenGL shader management.
The dagon.graphics.shader module defines the Shader class for managing
OpenGL shader programs, uniform, subroutine and UBO parameters, and binding logic.
The module also includes ShaderProgram for program compilation/linking.
Functions
| Name | Description |
globalShaderDefine(defineName, defineValue)
|
Global shader macro define.
To use in GLSL, add #include
|
Classes
| Name | Description |
BaseShaderParameter
|
Abstract base class for shader parameters (uniforms and subroutines).
Stores parameter name, location, and binding logic.
|
BaseShaderProgram
|
A shader program class that can be shared between multiple Shader instances.
Manages OpenGL program object.
|
Shader
|
Basic shader class.
|
ShaderCache
|
Global shader cache for saving and loading compiled shader binaries.
|
ShaderParameter
|
Represents a shader uniform parameter of type T.
Supports binding values, references, or callbacks for automatic updates.
|
ShaderParameterArray
|
Represents a shader uniform array parameter of type T[].
|
ShaderProgram
|
Represents a compiled and linked shader program with vertex and fragment shaders.
|
ShaderSubroutine
|
Represents a shader subroutine parameter.
Allows selection of subroutine implementations for vertex or fragment shaders.
|
UniformBlockParameter
|
Represents a std140 uniform block parameter (UBO) of type T
for passing arrays of structures to shaders.
|
Enums
| Name | Description |
ShaderType
|
Shader type enumeration.
|