The WEBGL_depth_texture extension is part of the WebGL API and defines 2D depth and depth-stencil textures.
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. The constant in WebGL2 is gl.UNSIGNED_INT_24_8.
Constants
This extension adds a new constant:
ext.UNSIGNED_INT_24_8_WEBGL- Unsigned integer type for 24-bit depth texture data.
Extended methods
This extension extends WebGLRenderingContext.texImage2D():
- The
formatandinternalformatparameters now acceptgl.DEPTH_COMPONENTandgl.DEPTH_STENCIL. - The
typeparameter now acceptsgl.UNSIGNED_SHORT,gl.UNSIGNED_INT, andext.UNSIGNED_INT_24_8_WEBGL. - The
pixelsparameter now accepts anArrayBufferViewof typeUint16ArrayandUint32Array.
This extension extends WebGLRenderingContext.framebufferTexture2D():
- The
attachmentparameter now acceptsgl.DEPTH_STENCIL_ATTACHMENT.
Incorrectly stated as the target parameter in the specification, see https://www.khronos.org/bugzilla/show_bug.cgi?id=674.
Examples
var ext = gl.getExtension('WEBGL_depth_texture');
gl.texImage2D(gl.TEXTURE_2D, 0, gl.DEPTH_COMPONENT, 512, 512, 0, gl.DEPTH_COMPONENT, gl.UNSIGNED_SHORT, null);
Specifications
| Specification | Status | Comment |
|---|---|---|
| WEBGL_depth_texture The definition of 'WEBGL_depth_texture' in that specification. |
Recommendation | Initial definition. |
Browser compatibility
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
WEBGL_depth_texture | Chrome
Full support
Yes
| Edge Full support ≤18 | Firefox
Full support
22
| IE ? | Opera
Full support
Yes
| Safari ? | WebView Android
Full support
Yes
| Chrome Android
Full support
Yes
| Firefox Android ? | Opera Android
Full support
Yes
| Safari iOS ? | Samsung Internet Android
Full support
Yes
|
Legend
- Full support
- Full support
- Compatibility unknown
- Compatibility unknown
- Requires a vendor prefix or different name for use.
- Requires a vendor prefix or different name for use.
