WebGLRenderingContext: enable() 方法

Baseline 已廣泛支援

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

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

WebGLRenderingContext.enable() 方法是 WebGL API 的一部分,用於啟用此上下文的特定 WebGL 功能。

語法

js
enable(cap)

引數

cap

一個 GLenum,指定要啟用哪個 WebGL 功能。可能的值:

常量 描述
gl.BLEND 啟用計算出的片段顏色值的混合。請參閱 WebGLRenderingContext.blendFunc()
gl.CULL_FACE 啟用多邊形的剔除。請參閱 WebGLRenderingContext.cullFace()
gl.DEPTH_TEST 啟用深度比較和深度緩衝區的更新。請參閱 WebGLRenderingContext.depthFunc()
gl.DITHER 在顏色分量寫入顏色緩衝區之前,啟用它們抖動。
gl.POLYGON_OFFSET_FILL 啟用為多邊形片段的深度值新增偏移量。請參閱 WebGLRenderingContext.polygonOffset()
gl.SAMPLE_ALPHA_TO_COVERAGE 啟用透過 alpha 值確定的臨時覆蓋值的計算。
gl.SAMPLE_COVERAGE 啟用片段的覆蓋值與臨時覆蓋值的 AND 運算。請參閱 WebGLRenderingContext.sampleCoverage()
gl.SCISSOR_TEST 啟用剪刀測試,該測試會丟棄位於剪刀矩形外部的片段。請參閱 WebGLRenderingContext.scissor()
gl.STENCIL_TEST 啟用模板測試和模板緩衝區的更新。請參閱 WebGLRenderingContext.stencilFunc()

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

常量 描述
gl.RASTERIZER_DISCARD 圖元在光柵化階段之前(但在可選的變換反饋階段之後)立即被丟棄。gl.clear() 命令將被忽略。

返回值

無(undefined)。

示例

js
gl.enable(gl.DITHER);

要檢查某個功能是否已啟用,請使用 WebGLRenderingContext.isEnabled() 方法。

js
gl.isEnabled(gl.DITHER);
// true

規範

規範
WebGL 規範
# 5.14.3

瀏覽器相容性

另見