This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The WebGL2RenderingContext.getActiveUniforms() method of the WebGL 2 API retrieves information about active uniforms within a WebGLProgram.
Syntax
any gl.getActiveUniforms(program, uniformIndices, pname);
Parameters
program- A
WebGLProgramcontaining the active uniforms. uniformIndices- An
ArrayofGLuintspecifying the indices of the active uniforms to query. pname- A
GLenumspecifying which information to query. Possible values:gl.UNIFORM_TYPE: Returns anArrayofGLenumindicating the types of the uniforms.gl.UNIFORM_SIZE: Returns anArrayofGLuintindicating the sizes of the uniforms.gl.UNIFORM_BLOCK_INDEX: Returns anArrayofGLintindicating the block indices of the uniforms.gl.UNIFORM_OFFSET: Returns anArrayofGLintindicating the uniform buffer offsets.gl.UNIFORM_ARRAY_STRIDE: Returns anArrayofGLintindicating the strides between the elements.gl.UNIFORM_MATRIX_STRIDE: Returns anArrayofGLintindicating the strides between columns of a column-major matrix or a row-major matrix.gl.UNIFORM_IS_ROW_MAJOR: Returns anArrayofGLbooleanindicating whether each of the uniforms is a row-major matrix or not.
Return value
Depends on which information is requested using the pname parameter.
Examples
var uniformIndices = gl.getUniformIndices(program, ['UBORed', 'UBOGreen', 'UBOBlue']); var uniformOffsets = gl.getActiveUniforms(program, uniformIndices, gl.UNIFORM_OFFSET);
Specifications
| Specification | Status | Comment |
|---|---|---|
| WebGL 2.0 The definition of 'getActiveUniforms' in that specification. |
Editor's Draft | Initial definition for WebGL. |
| OpenGL ES 3.0 The definition of 'glGetActiveUniformsiv' in that specification. |
Standard | Man page of the (similar) OpenGL 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.
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
getActiveUniforms | 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
