EXT_frag_depth 擴充套件

可用性有限

此特性不是基線特性,因為它在一些最廣泛使用的瀏覽器中不起作用。

EXT_frag_depth 擴充套件是 WebGL API 的一部分,它允許在片元著色器(fragment shader)中設定片元的深度值。

可以使用 WebGLRenderingContext.getExtension() 方法來訪問 WebGL 擴充套件。有關更多資訊,請參閱 WebGL 教程中的 使用擴充套件

注意:此擴充套件僅在 WebGL1 上下文中可用。在 WebGL2 中,此擴充套件的功能預設在 WebGL2 上下文中可用。它需要 GLSL #version 300 es

示例

啟用擴充套件

js
gl.getExtension("EXT_frag_depth");

現在,輸出變數 gl_FragDepthEXT 可用於在片元著色器中設定片元的深度值。

html
<script type="x-shader/x-fragment">
  void main() {
    gl_FragColor = vec4(1.0, 0.0, 1.0, 1.0);
    gl_FragDepthEXT = 0.5;
  }
</script>

規範

規範
WebGL EXT_frag_depth Khronos 批准的擴充套件規範

瀏覽器相容性

另見