The WebGLRenderingContext.getUniform()
method of the WebGL API returns the value of a uniform
variable at a given location.
Syntax
any gl.getUniform(program, location);
Parameters
- program
- A
WebGLProgram
containing the uniform attribute. - location
- A
WebGLUniformLocation
object containing the location of the uniform attribute to get.
Return value
The returned type depends on the uniform type:
Uniform type | Returned type |
---|---|
WebGL 1 only | |
boolean |
GLBoolean |
int |
GLint |
float |
GLfloat |
vec2 |
Float32Array (with 2 elements) |
ivec2 |
Int32Array (with 2 elements) |
bvec2 |
Array of GLBoolean (with 2 elements) |
vec3 |
Float32Array (with 3 elements) |
ivec3 |
Int32Array (with 3 elements) |
bvec3 |
Array of GLBoolean (with 3 elements) |
vec4 |
Float32Array (with 4 elements) |
ivec4 |
Int32Array (with 4 elements) |
bvec4 |
Array of GLBoolean (with 4 elements) |
mat2 |
Float32Array (with 4 elements) |
mat3 |
Float32Array (with 9 elements) |
mat4 |
Float32Array (with 16 elements) |
sampler2D |
GLint |
samplerCube |
GLint |
Additionally available in WebGL 2 | |
uint |
GLuint |
uvec2 |
Uint32Array (with 2 elements) |
uvec3 |
Uint32Array (with 3 elements) |
uvec4 |
Uint32Array (with 4 elements) |
mat2x3 |
Float32Array (with 6 elements) |
mat2x4 |
Float32Array (with 8 elements) |
mat3x2 |
Float32Array (with 6 elements) |
mat3x4 |
Float32Array (with 12 elements) |
mat4x2 |
Float32Array (with 8 elements) |
mat4x3 |
Float32Array (with 12 elements) |
any sampler type | GLint |
Examples
var loc = gl.getUniformLocation(program, 'u_foobar');
gl.getUniform(program, loc);
Specifications
Specification | Status | Comment |
---|---|---|
WebGL 1.0 The definition of 'getUniform' in that specification. |
Recommendation | Initial definition for WebGL. |
OpenGL ES 2.0 The definition of 'glGetUniform' in that specification. |
Standard | Man page of the (similar) OpenGL ES 2 API. |
WebGL 2.0 The definition of 'getUniform' in that specification. |
Editor's Draft | Updated definition for WebGL. |
OpenGL ES 3.0 The definition of 'glGetUniform' in that specification. |
Standard | Man page of the (similar) OpenGL ES 3 API. |
Browser compatibility
BCD tables only load in the browser
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.