WebGL2RenderingContext: getActiveUniforms() method

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.

Note: This feature is available in Web Workers.

The WebGL2RenderingContext.getActiveUniforms() method of the WebGL 2 API retrieves information about active uniforms within a WebGLProgram.

Syntax

js
getActiveUniforms(program, uniformIndices, pname)

Parameters

program

A WebGLProgram containing the active uniforms.

uniformIndices

An Array of GLuint 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 of GLenum indicating the types of the uniforms.

gl.UNIFORM_SIZE

Returns an Array of GLuint indicating the sizes of the uniforms.

gl.UNIFORM_BLOCK_INDEX

Returns an Array of GLint indicating the block indices of the uniforms.

gl.UNIFORM_OFFSET

Returns an Array of GLint indicating the uniform buffer offsets.

gl.UNIFORM_ARRAY_STRIDE

Returns an Array of GLint indicating the strides between the elements.

gl.UNIFORM_MATRIX_STRIDE

Returns an Array of GLint indicating the strides between columns of a column-major matrix or a row-major matrix.

gl.UNIFORM_IS_ROW_MAJOR

Returns an Array of GLboolean indicating 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

js
const uniformIndices = gl.getUniformIndices(program, [
  "UBORed",
  "UBOGreen",
  "UBOBlue",
]);
const uniformOffsets = gl.getActiveUniforms(
  program,
  uniformIndices,
  gl.UNIFORM_OFFSET,
);

Specifications

Specification
WebGL 2.0 Specification
# 3.7.16

Browser compatibility

BCD tables only load in the browser

See also