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.
Availability: 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
| Specification | Status | Comment | 
|---|---|---|
| EXT_frag_depth The definition of 'EXT_frag_depth' in that specification. | Recommendation | Initial definition. | 
Browser compatibility
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari | 
|---|---|---|---|---|---|
| Basic support | ? | 30.0 (30.0) | ? | ? | ? | 
| Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile | 
|---|---|---|---|---|---|---|
| Basic support | ? | ? | ? | ? | ? | ? |