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.0The definition of 'getUniform' in that specification. | Recommendation | Initial definition for WebGL. |
OpenGL ES 2.0The definition of 'glGetUniform' in that specification. | Standard | Man page of the (similar) OpenGL ES 2 API. |
WebGL 2.0The definition of 'getUniform' in that specification. | Editor's Draft | Updated definition for WebGL. |
OpenGL ES 3.0The definition of 'glGetUniform' in that specification. | Standard | Man page of the (similar) OpenGL ES 3 API. |
Browser compatibility
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.
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
getUniform
|
Chrome
Full support 9 |
Edge
Full support 12 |
Firefox
Full support 4 |
IE
Full support 11 |
Opera
Full support 12 |
Safari
Full support 5.1 |
WebView Android
Full support Yes |
Chrome Android
Full support 25 |
Firefox Android
Full support Yes |
Opera Android
Full support 12 |
Safari iOS
Full support 8 |
Samsung Internet Android
Full support 1.5 |
WebGL2
|
Chrome
Full support 56 |
Edge
Full support 79 |
Firefox
Full support 51 |
IE
No support No |
Opera
Full support 43 |
Safari
No support No |
WebView Android
Full support 58 |
Chrome Android
Full support 58 |
Firefox Android
Full support 51 |
Opera Android
Full support 43 |
Safari iOS
No support No |
Samsung Internet Android
Full support 7.0 |
Legend
- Full support
- Full support
- No support
- No support
See also
WebGLRenderingContext.getUniform() by Mozilla Contributors is licensed under CC-BY-SA 2.5.