{{APIRef("WebGL")}}
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 {{domxref("WebGLRenderingContext.getExtension()")}} method. For more information, see also Using Extensions in the WebGL tutorial.
Availability: This extension is only available to {{domxref("WebGLRenderingContext", "WebGL1", "", 1)}} contexts. In {{domxref("WebGL2RenderingContext", "WebGL2", "", 1)}}, 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");
With the built-in output variable gl_FragDepthEXT
, you can now 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 |
---|---|---|
{{SpecName('EXT_frag_depth', "", "EXT_frag_depth")}} | {{Spec2('EXT_frag_depth')}} | Initial definition. |
Browser compatibility
{{CompatibilityTable}}
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | {{CompatUnknown}} | {{CompatGeckoDesktop("30.0")}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
See also
- {{domxref("WebGLRenderingContext.getExtension()")}}