WebGL2RenderingContext: texStorage3D() method
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.
The WebGL2RenderingContext.texStorage3D()
method of the
WebGL API specifies all levels of a
three-dimensional texture or two-dimensional array texture.
Syntax
texStorage3D(target, levels, internalformat, width, height, depth)
Parameters
target
-
A
GLenum
specifying the binding point (target) of the active texture. Possible values:gl.TEXTURE_3D
: A three-dimensional texture.gl.TEXTURE_2D_ARRAY
: A two-dimensional array texture.
level
-
A
GLint
specifying the number of texture levels. internalformat
-
A
GLenum
specifying the texture store format. Possible values:gl.R8
gl.R16F
gl.R32F
gl.R8UI
gl.RG8
gl.RG16F
gl.RG32F
gl.RGUI
gl.RGB8
gl.SRGB8
gl.RGB565
gl.R11F_G11F_B10F
gl.RGB9_E5
gl.RGB16F
gl.RGB32F
gl.RGB8UI
gl.RGBA8
gl.SRGB_ALPHA8
gl.RGB5_A1
gl.RGBA4444
gl.RGBA16F
gl.RGBA32F
gl.RGBA8UI
In addition if the
WEBGL_compressed_texture_etc
extension is supported, the following values are also possible:gl.COMPRESSED_R11_EAC
gl.COMPRESSED_SIGNED_R11_EAC
gl.COMPRESSED_RG11_EAC
gl.COMPRESSED_SIGNED_RG11_EAC
gl.COMPRESSED_RGB8_ETC2
gl.COMPRESSED_RGBA8_ETC2_EAC
gl.COMPRESSED_SRGB8_ETC2
gl.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC
gl.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2
gl.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2
width
-
A
GLsizei
specifying the width of the texture. height
-
A
GLsizei
specifying the height of the texture. depth
-
A
GLsizei
specifying the depth of the texture.
Return value
None (undefined
).
Examples
gl.texStorage3D(gl.TEXTURE_3D, 1, gl.RGB8, 256, 256, 256);
Specifications
Specification |
---|
WebGL 2.0 Specification # 3.7.6 |
Browser compatibility
BCD tables only load in the browser