{{APIRef("WebGL")}}
The WEBGL_compressed_texture_etc1
extension is part of the WebGL API and exposes the ETC1 compressed texture format.
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 the {{domxref("WebGLRenderingContext.getExtension()")}} method. For more information, see also Using Extensions in the WebGL tutorial.
Constants
The compressed texture format is exposed by a constant and can be used with the {{domxref("WebGLRenderingContext.compressedTexImage2D", "compressedTexImage2D()")}} method.
ext.COMPRESSED_RGB_ETC1_WEBGL
- Compresses 24-bit RGB data with no alpha channel.
Examples
var ext = gl.getExtension("WEBGL_compressed_texture_etc1"); var texture = gl.createTexture(); gl.bindTexture(gl.TEXTURE_2D, texture); gl.compressedTexImage2D(gl.TEXTURE_2D, 0, ext.COMPRESSED_RGB_ETC1_WEBGL, 512, 512, 0, textureData);
Specifications
Specification | Status | Comment |
---|---|---|
{{SpecName('WEBGL_compressed_texture_etc1', "", "WEBGL_compressed_texture_etc1")}} | {{Spec2('WEBGL_compressed_texture_etc1')}} | Initial definition. |
Browser compatibility
{{CompatibilityTable}}
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | {{CompatNo}} | {{CompatGeckoDesktop("30.0")}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | {{CompatNo}} | {{CompatNo}} | {{CompatUnknown}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} |
See also
- Ericsson Texture Compression – Wikipedia
- {{domxref("WEBGL_compressed_texture_es3")}} (ETC2 and EAC)
- {{domxref("WebGLRenderingContext.getExtension()")}}
- {{domxref("WebGLRenderingContext.compressedTexImage2D()")}}
- {{domxref("WebGLRenderingContext.getParameter()")}}