WEBGL_compressed_texture_s3tc_srgb extension
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
TheWEBGL_compressed_texture_s3tc_srgb extension is part of theWebGL API and exposes fourS3TC compressed texture formats for the sRGB colorspace.
Compressed textures reduce the amount of memory needed to store a texture on the GPU, allowing for higher resolution textures or more of the same resolution textures.
WebGL extensions are available using theWebGLRenderingContext.getExtension() method. For more information, see alsoUsing Extensions in theWebGL tutorial.
In this article
Constants
The compressed texture formats are exposed by four constants and can be used in two functions:compressedTexImage2D() andcompressedTexSubImage2D().
ext.COMPRESSED_SRGB_S3TC_DXT1_EXTA DXT1-compressed image in an sRGB image format.
ext.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXTA DXT1-compressed image in an sRGB image format with an on/off alpha value.
ext.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXTA DXT3-compressed image in an sRGBA image format.
ext.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXTA DXT5-compressed image in an sRGBA image format.
Examples
const ext = gl.getExtension("WEBGL_compressed_texture_s3tc_srgb");const texture = gl.createTexture();gl.bindTexture(gl.TEXTURE_2D, texture);gl.compressedTexImage2D( gl.TEXTURE_2D, 0, ext.COMPRESSED_SRGB_S3TC_DXT1_EXT, 512, 512, 0, textureData,);gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR);Specifications
| Specification |
|---|
| WebGL WEBGL_compressed_texture_s3tc_srgb Extension Specification> |