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
targetparameter now acceptsgl.DEPTH_ATTACHMENTandgl.DEPTH_STENCIL_ATTACHMENT.
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
| Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|
| Basic support | ? | 22.0 (22.0) [1] | ? | ? | ? |
| Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
|---|---|---|---|---|---|---|
| Basic support | ? | ? | ? | ? | ? | ? |
[1] This extension was prefixed with MOZ_ in prior versions.