WebGLRenderingContext:bindTexture() 方法

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

注意:此功能在 Web Workers 中可用。

WebGLRenderingContext.bindTexture() 方法(屬於 WebGL API)將給定的 WebGLTexture 物件繫結到指定的紋理目標(繫結點)。

語法

js
bindTexture(target, texture)

引數

目標

一個 GLenum,指定繫結點(目標)。可能的值

gl.TEXTURE_2D

二維紋理。

gl.TEXTURE_CUBE_MAP

立方體貼圖紋理。

使用 WebGL 2 上下文時,還可以使用以下值:

gl.TEXTURE_3D

三維紋理。

gl.TEXTURE_2D_ARRAY

二維陣列紋理。

texture

要繫結的 WebGLTexture 物件。如果傳入 null,則會解除繫結指定目標上當前繫結的紋理。

返回值

無(undefined)。

異常

如果 target 不是 gl.TEXTURE_2Dgl.TEXTURE_CUBE_MAPgl.TEXTURE_3Dgl.TEXTURE_2D_ARRAY,則會丟擲 gl.INVALID_ENUM 錯誤。

示例

繫結紋理

js
const canvas = document.getElementById("canvas");
const gl = canvas.getContext("webgl");
const texture = gl.createTexture();

gl.bindTexture(gl.TEXTURE_2D, texture);

解綁紋理

js
// Unbind any texture currently bound to TEXTURE_2D
gl.bindTexture(gl.TEXTURE_2D, null);

獲取當前繫結

要檢查當前紋理繫結,請查詢 gl.TEXTURE_BINDING_2Dgl.TEXTURE_BINDING_CUBE_MAP 常量。

js
gl.getParameter(gl.TEXTURE_BINDING_2D);

規範

規範
WebGL 規範
# 5.14.8
WebGL 2.0 規範
# 3.7.1

瀏覽器相容性

另見