WebGLRenderingContext.activeTexture()

这篇翻译不完整。请帮忙从英语翻译这篇文章

WebGLRenderingContext.activeTexture() 是 WebGL API 方法之一,用来激活指定的纹理单元。

句法

void gl.activeTexture(texture);

参数

texture
需要激活的纹理单元。其值是 gl.TEXTUREI ,其中的 I 在 0 到 gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1 范围内。

返回值

无返回值。

异常

如果 texture 不是 gl.TEXTUREI( I 在 0 到 gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1 范围内),一个 gl.INVALID_ENUM 错误将被抛出。

示例

接下来调用 gl.TEXTURE1 作为当前纹理,随后对纹理状态的更改将会影响到这个纹理。

gl.activeTexture(gl.TEXTURE1);

纹理单元的数量视实现而定, 你可以通过访问常量 MAX_COMBINED_TEXTURE_IMAGE_UNITS 来获取这个值。按照规范来说,最少是 8 个。

gl.getParameter(gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS);

想要获取激活的纹理,可以查询常量 ACTIVE_TEXTURE

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

规范

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

浏览器兼容性

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support 9 4.0 (2.0) 11 12 5.1
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support ? 25 (Yes) ? 12 8.1

另见

文档标签和贡献者

 此页面的贡献者: LiebeU
 最后编辑者: LiebeU,