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
format
andinternalformat
parameters now acceptgl.DEPTH_COMPONENT
andgl.DEPTH_STENCIL
. - The
type
parameter now acceptsgl.UNSIGNED_SHORT
,gl.UNSIGNED_INT
, andext.UNSIGNED_INT_24_8_WEBGL
. - The
pixels
parameter now accepts anArrayBufferView
of typeUint16Array
andUint32Array
.
This extension extends WebGLRenderingContext.framebufferTexture2D()
:
- The
attachment
parameter 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_textureThe 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.
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
WEBGL_depth_texture
|
Chrome Full support Yes Full support Yes Full support Yes Prefixed' Implemented with the vendor prefix: WEBKIT_ |
Edge
Full support ≤18 |
Firefox Full support 22 Full support 22 No support ? — 58 Prefixed' Implemented with the vendor prefix: MOZ_ |
IE
? |
Opera Full support Yes Full support Yes Full support Yes Prefixed' Implemented with the vendor prefix: WEBKIT_ |
Safari
? |
WebView Android Full support Yes Full support Yes Full support Yes Prefixed' Implemented with the vendor prefix: WEBKIT_ |
Chrome Android Full support Yes Full support Yes Full support Yes Prefixed' Implemented with the vendor prefix: WEBKIT_ |
Firefox Android
? |
Opera Android Full support Yes Full support Yes Full support Yes Prefixed' Implemented with the vendor prefix: WEBKIT_ |
Safari iOS
? |
Samsung Internet Android Full support Yes Full support Yes Full support Yes Prefixed' Implemented with the vendor prefix: WEBKIT_ |
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.
See also
WebGLRenderingContext.getExtension()
WebGLRenderingContext.texImage2D()
WebGLRenderingContext.framebufferTexture2D()
WEBGL_depth_texture by Mozilla Contributors is licensed under CC-BY-SA 2.5.