The WebGLRenderingContext.getUniform()
method of the WebGL API returns the value of a uniform variable at a given location.
any gl.getUniform(program, location);
WebGLProgram
containing the uniform attribute.WebGLUniformLocation
object containing the location of the uniform attribute to get.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 |
var loc = gl.getUniformLocation(program, 'u_foobar'); gl.getUniform(program, loc);
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. |
Desktop | ||||||
---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
Basic support | 9 | 12 | 4 | 11 | 12 | 5.1 |
WebGL2 |
56 | No | 51 | No | 43 | No |
Mobile | |||||||
---|---|---|---|---|---|---|---|
Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
Basic support | Yes | 25 | Yes | Yes | 12 | 8.1 | Yes |
WebGL2 |
58 | 58 | No | 51 | 43 | No | 7.0 |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/getUniform