WebGLRenderingContext.activeTexture()

The WebGLRenderingContext.activeTexture() method of the WebGL API specifies which texture unit to make active.

Syntax

void gl.activeTexture(texture);

Parameters

texture
The texture unit to make active. The value is a gl.TEXTUREI where I is within the range from 0 to gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1.

Return value

None.

Exceptions

If texture is not one of gl.TEXTUREI, where I is within the range from 0 to gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1, a gl.INVALID_ENUM error is thrown.

Examples

The following call selects gl.TEXTURE1 as the current texture. Subsequent calls that modify the texture state will affect this texture.

gl.activeTexture(gl.TEXTURE1);

The number of texture units is implementation dependent, you can get this number with the help of the MAX_COMBINED_TEXTURE_IMAGE_UNITS constant. It is, per specification, at least 8.

gl.getParameter(gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS);

To get the active texture, query the ACTIVE_TEXTURE constant.

gl.activeTexture(gl.TEXTURE0);
gl.getParameter(gl.ACTIVE_TEXTURE);
// returns "33984" (0x84C0, gl.TEXUTURE0 enum value)

Specifications

Specification Status Comment
WebGL 1.0
The definition of 'activeTexture' in that specification.
Recommendation Initial definition.
OpenGL ES 2.0
The definition of 'glActiveTexture' in that specification.
Standard Man page of the OpenGL API.

Browser compatibility

Feature Chrome Edge Firefox Internet Explorer Opera Safari Servo
Basic Support91214.0111125.1No support
Feature Android Chrome for Android Edge Mobile Firefox for Android IE Mobile Opera Mobile Safari Mobile
Basic Support(Yes)25No support(Yes)128.1

1. To access the WebGL context, use experimental-webgl rather than the standard webgl

See also

Document Tags and Contributors

 Contributors to this page: teoli, fscholz
 Last updated by: teoli,