files/en-us/web/api/webglrenderingcontext/activetexture/index.md
{{APIRef("WebGL")}}{{AvailableInWorkers}}
The WebGLRenderingContext.activeTexture() method of the
WebGL API specifies which texture unit to
make active.
activeTexture(texture)
texture
gl.TEXTUREI
where I is within the range from 0 to
gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1.None ({{jsxref("undefined")}}).
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.
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.TEXTURE0 enum value)
{{Specifications}}
{{Compat}}