This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The WebGL2RenderingContext.compressedTexSubImage3D()
method of the WebGL API specifies a three-dimensional sub-rectangle for a texture image in a compressed format.
// read from the buffer bound to gl.PIXEL_UNPACK_BUFFER void gl.compressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, offset); void gl.compressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, ArrayBufferView srcData, optional srcOffset, optional srcLengthOverride);
target
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
GLint
specifying the level of detail. Level 0 is the base image level and level n is the nth mipmap reduction level.xoffset
GLint
specifying the x offset within the compressed texture image.yoffset
GLint
specifying the y offset within the compressed texture image.zoffset
GLint
specifying the z offset within the compressed texture image.width
GLsizei
specifying the width of the texture.height
GLsizei
specifying the height of the texture.depth
GLsizei
specifying the depth of the texture.format
GLenum
specifying the compressed image format. Possible values: 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
imageSize
GLint
specifying the number of bytes to read from the buffer bound to gl.PIXEL_UNPACK_BUFFER
.offset
GLint
specifying the offset in bytes from which to read from the buffer bound to gl.PIXEL_UNPACK_BUFFER
.srcData
ArrayBufferView
that be used as a data store for the compressed image data in memory.None.
gl.compressedTexSubImage3D(gl.TEXTURE_3D, 0, 0, 0, 512, 512, 512, gl.COMPRESSED_R11_EAC, textureData);
Specification | Status | Comment |
---|---|---|
WebGL 2.0 The definition of 'compressedTexSubImage3D' in that specification. | Editor's Draft | Initial definition for WebGL. |
OpenGL ES 3.0 The definition of 'glCompressedTexSubImage3D' in that specification. | Standard | Man page of the (similar) OpenGL ES 3.0 API. |
Desktop | ||||||
---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | |
Basic support | 56 | No | 51 | No | 43 | No |
Mobile | |||||||
---|---|---|---|---|---|---|---|
Android webview | Chrome for Android | Edge Mobile | Firefox for Android | Opera for Android | iOS Safari | Samsung Internet | |
Basic support | 58 | 58 | No | 51 | 43 | No | 7.0 |
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WebGL2RenderingContext/compressedTexSubImage3D