The WebGLRenderingContext.activeTexture()
method of the WebGL API specifies which texture unit to make active.
void gl.activeTexture(texture);
texture
gl.TEXTUREI
where I is within the range from 0 to gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1
.None.
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.TEXUTURE0 enum value)
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. |
Feature | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | Servo |
---|---|---|---|---|---|---|---|
Basic Support | 9 | 121 | 4.0 | 111 | 12 | 5.1 | No support |
Feature | Android | Chrome for Android | Edge Mobile | Firefox for Android | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Basic Support | (Yes) | 25 | No support | (Yes) | 111 | 12 | 8.1 |
1. To access the WebGL context, use experimental-webgl rather than the standard webgl
© 2005–2017 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/activeTexture