This is an experimental technologyCheck 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
WebGLProgram
containing the active uniforms. uniformIndices
- An
Array
ofGLuint
specifying the indices of the active uniforms to query. pname
- A
GLenum
specifying which information to query. Possible values:
gl.UNIFORM_TYPE
- Returns an
Array
ofGLenum
indicating the types of the uniforms. gl.UNIFORM_SIZE
: Returns anArray
ofGLuint
indicating the sizes of the uniforms.gl.UNIFORM_BLOCK_INDEX
: Returns anArray
ofGLint
indicating the block indices of the uniforms.gl.UNIFORM_OFFSET
: Returns anArray
ofGLint
indicating the uniform buffer offsets.gl.UNIFORM_ARRAY_STRIDE
: Returns anArray
ofGLint
indicating the strides between the elements.gl.UNIFORM_MATRIX_STRIDE
: Returns anArray
ofGLint
indicating the strides between columns of a column-major matrix or a row-major matrix.gl.UNIFORM_IS_ROW_MAJOR
: Returns anArray
ofGLboolean
indicating whether each of the uniforms is a row-major matrix or not.
- Returns an
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.0The definition of 'getActiveUniforms' in that specification. | Editor's Draft | Initial definition for WebGL. |
OpenGL ES 3.0The 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.
Update compatibility data on GitHub
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
See also
WebGL2RenderingContext.getActiveUniforms() by Mozilla Contributors is licensed under CC-BY-SA 2.5.