Uniform¶
-
class
moderngl.
Uniform
¶ A uniform is a global GLSL variable declared with the “uniform” storage qualifier. These act as parameters that the user of a shader program can pass to that program.
In ModernGL, Uniforms can be accessed using
Program.uniforms
Methods¶
-
Uniform.
read
() → bytes¶ Read the value of the uniform.
-
Uniform.
write
(data)¶ Write the value of the uniform.
Attributes¶
-
Uniform.
location
¶ int – The location of the uniform. The location holds the value returned by the glGetUniformLocation. To set the value of the uniform use the
value
instead.
-
Uniform.
dimension
¶ int – The dimension of the uniform.
GLSL type dimension sampler2D 1 sampler2DCube 1 sampler2DShadow 1 bool 1 bvec2 2 bvec3 3 bvec4 4 int 1 ivec2 2 ivec3 3 ivec4 4 uint 1 uvec2 2 uvec3 3 uvec4 4 float 1 vec2 2 vec3 3 vec4 4 double 1 dvec2 2 dvec3 3 dvec4 4 mat2 4 mat2x3 6 mat2x4 8 mat3x2 6 mat3 9 mat3x4 12 mat4x2 8 mat4x3 12 mat4 16 dmat2 4 dmat2x3 6 dmat2x4 8 dmat3x2 6 dmat3 9 dmat3x4 12 dmat4x2 8 dmat4x3 12 dmat4 16
-
Uniform.
array_length
¶ int – The length of the array of the uniform. The array_length is 1 for non array uniforms.
-
Uniform.
name
¶ str – The name of the uniform. The name does not contain leading [0]. The name may contain [ ] when the uniform is part of a struct.
-
Uniform.
value
¶ The value of the uniform. Reading the value of the uniform may force the GPU to sync.
The value must be a tuple for non array uniforms. The value must be a list of tuples for array uniforms.