Web/API/WebGL2RenderingContext/compressedTexSubImage3D

From Get docs

This is an experimental technologyCheck 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.

Syntax

// 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);

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 level of detail. Level 0 is the base image level and level n is the nth mipmap reduction level.
xoffset
A GLint specifying the x offset within the compressed texture image.
yoffset
A GLint specifying the y offset within the compressed texture image.
zoffset
A GLint specifying the z offset within the compressed texture image.
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.
format
A 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
A GLint specifying the number of bytes to read from the buffer bound to gl.PIXEL_UNPACK_BUFFER.
offset
A GLint specifying the offset in bytes from which to read from the buffer bound to gl.PIXEL_UNPACK_BUFFER.
srcData
An ArrayBufferView that be used as a data store for the compressed image data in memory.

Return value

None.

Examples

gl.compressedTexSubImage3D(gl.TEXTURE_3D, 0, 0, 0, 512, 512, 512, gl.COMPRESSED_R11_EAC, textureData);

Specifications

Specification Status Comment
WebGL 2.0The definition of 'compressedTexSubImage3D' in that specification. Editor's Draft Initial definition for WebGL.
OpenGL ES 3.0The definition of 'glCompressedTexSubImage3D' in that specification. Standard Man page of the (similar) OpenGL ES 3.0 API.

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
Chrome Edge Firefox Internet Explorer Opera Safari Android webview Chrome for Android Firefox for Android Opera for Android Safari on iOS Samsung Internet
compressedTexSubImage3D Chrome

Full support 56

Edge

Full support 79

Firefox

Full support 51

IE

No support No

Opera

Full support 43

Safari

No support No

WebView Android

Full support 58

Chrome Android

Full support 58

Firefox Android

Full support 51

Opera Android

Full support 43

Safari iOS

No support No

Samsung Internet Android

Full support 7.0

Legend

Full support  
Full support
No support  
No support


See also