WEBGL_compressed_texture_s3tc_srgb Erweiterung
Die WEBGL_compressed_texture_s3tc_srgb
Erweiterung ist Teil der WebGL API und bietet vier S3TC-komprimierte Texturformate für den sRGB-Farbraum.
Komprimierte Texturen reduzieren den Speicherbedarf auf der GPU, was die Verwendung von Texturen mit höherer Auflösung oder eine größere Anzahl von Texturen mit derselben Auflösung ermöglicht.
WebGL-Erweiterungen sind über die Methode WebGLRenderingContext.getExtension()
verfügbar. Weitere Informationen finden Sie auch unter Using Extensions im WebGL Tutorial.
Konstanten
Die komprimierten Texturformate werden durch vier Konstanten bereitgestellt und können in zwei Funktionen verwendet werden: compressedTexImage2D()
und compressedTexSubImage2D()
.
ext.COMPRESSED_SRGB_S3TC_DXT1_EXT
-
Ein DXT1-komprimiertes Bild im sRGB-Bildformat.
ext.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT
-
Ein DXT1-komprimiertes Bild im sRGB-Bildformat mit einem einfachen Ein-/Aus-Alpha-Wert.
ext.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT
-
Ein DXT3-komprimiertes Bild im sRGBA-Bildformat.
ext.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT
-
Ein DXT5-komprimiertes Bild im sRGBA-Bildformat.
Beispiele
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);
Spezifikationen
Specification |
---|
WebGL WEBGL_compressed_texture_s3tc_srgb Extension Specification |
Browser-Kompatibilität
BCD tables only load in the browser