WebGLRenderingContext: activeTexture() 方法
注意:此功能在 Web Workers 中可用。
WebGLRenderingContext.activeTexture() 方法是 WebGL API 的一部分,用於指定要啟用的紋理單元。
語法
js
activeTexture(texture)
引數
texture-
要啟用的紋理單元。該值為
gl.TEXTUREI,其中 I 的取值範圍是 0 到gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1。
返回值
無(undefined)。
異常
如果 texture 不是 gl.TEXTUREI(其中 I 的取值範圍是 0 到 gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS - 1)之一,則會丟擲 gl.INVALID_ENUM 錯誤。
示例
以下呼叫將 gl.TEXTURE1 選為當前紋理。後續修改紋理狀態的呼叫將影響此紋理。
js
gl.activeTexture(gl.TEXTURE1);
紋理單元的數量取決於具體實現,您可以使用 MAX_COMBINED_TEXTURE_IMAGE_UNITS 常量來獲取此數量。根據規範,它至少為 8。
js
gl.getParameter(gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS);
要獲取當前啟用的紋理,請查詢 ACTIVE_TEXTURE 常量。
js
gl.activeTexture(gl.TEXTURE0);
gl.getParameter(gl.ACTIVE_TEXTURE);
// returns "33984" (0x84C0, gl.TEXTURE0 enum value)
規範
| 規範 |
|---|
| WebGL 規範 # 5.14.3 |
瀏覽器相容性
載入中…