WebGLRenderingContext.activeTexture()
activeTexture()
方法,在WebGL API中指定纹理来创造不同的效果。
语法
void gl.activeTexture(texture);
参数
texture
产生变化的纹理单元。它的值是一个gl。 TEXTURE``I
是在 0 到gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1
之间的取值。
返回值
无
提示
如果 texture 不是gl
当中的一个。将会抛出 INVALID_ENUM
错误。
例子
下列语句选择 gl.TEXTURE1
作为当前纹理。 后续修改纹理状态的语句将会影响这个纹理。
gl.activeTexture(gl.TEXTURE1);
纹理单元的数量是履行依赖的(不固定,随其他变化而变化)。你可以在 MAX_COMBINED_TEXTURE_IMAGE_UNITS
constant 的帮助下得到这个数量。它按规格,至少是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)
规范
浏览器兼容
Desktop:Chrome 9、 Firefox 4.0 、 Internet Explorer 11 、Opera 12、Safari 5.1;
Mobile: Android ?、 Chrome for Android 25、 Firefox Mobile 、 IE Mobile ?、 Opera Mobile 12、 Safari Mobile 8.1;