WebGLRenderingContext: disable() 方法

Baseline 已廣泛支援

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

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

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

語法

js
disable(capability)

引數

功能

一個 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.disable(gl.DITHER);

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

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

規範

規範
WebGL 規範
# 5.14.3

瀏覽器相容性

另見