The EXT_frag_depth
extension is part of the WebGL API and enables to set a depth value of a fragment from within the fragment shader.
WebGL extensions are available using the WebGLRenderingContext.getExtension()
method. For more information, see also Using Extensions in the WebGL tutorial.
Note: This extension is only available to WebGL1 contexts. In WebGL2, the functionality of this extension is available on the WebGL2 context by default. It requires GLSL #version 300 es
.
Examples
Enable the extension:
gl.getExtension("EXT_frag_depth");
Now the output variable gl_FragDepthEXT
is available to set a depth value of a fragment from within the fragment shader:
<script type="x-shader/x-fragment">
void main() {
gl_FragColor = vec4(1.0, 0.0, 1.0, 1.0);
gl_FragDepthEXT = 0.5;
}
</script>
Specifications
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
EXT_frag_depth |
38 |
12–79 |
47 |
No |
25 |
9 |
38 |
38 |
No |
25 |
15 |
3.0 |
See also