WEBGL_compressed_texture_s3tc Erweiterung
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Die WEBGL_compressed_texture_s3tc
Erweiterung ist Teil der WebGL API und stellt vier S3TC-komprimierte Texturformate zur Verfügung.
Komprimierte Texturen reduzieren den Speicherbedarf auf der GPU, was die Speicherung von höher aufgelösten Texturen oder mehreren Texturen derselben Auflösung ermöglicht.
WebGL-Erweiterungen sind über die Methode WebGLRenderingContext.getExtension()
verfügbar. Weitere Informationen finden Sie unter Verwendung von Erweiterungen im WebGL Tutorial.
Konstanten
Die komprimierten Texturformate werden durch vier Konstanten dargestellt und können in zwei Funktionen verwendet werden: compressedTexImage2D()
und compressedTexSubImage2D()
.
ext.COMPRESSED_RGB_S3TC_DXT1_EXT
-
Ein DXT1-komprimiertes Bild im RGB-Bildformat.
ext.COMPRESSED_RGBA_S3TC_DXT1_EXT
-
Ein DXT1-komprimiertes Bild im RGB-Bildformat mit einem ein/aus-Alpha-Wert.
ext.COMPRESSED_RGBA_S3TC_DXT3_EXT
-
Ein DXT3-komprimiertes Bild im RGBA-Bildformat. Im Vergleich zu einer 32-Bit-RGBA-Textur bietet es eine 4:1 Kompression.
ext.COMPRESSED_RGBA_S3TC_DXT5_EXT
-
Ein DXT5-komprimiertes Bild im RGBA-Bildformat. Es bietet ebenfalls eine 4:1 Kompression, unterscheidet sich jedoch vom DXT3-Kompressionsverfahren, wie die Alpha-Kompression durchgeführt wird.
Beispiele
const ext =
gl.getExtension("WEBGL_compressed_texture_s3tc") ||
gl.getExtension("MOZ_WEBGL_compressed_texture_s3tc") ||
gl.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");
const texture = gl.createTexture();
gl.bindTexture(gl.TEXTURE_2D, texture);
gl.compressedTexImage2D(
gl.TEXTURE_2D,
0,
ext.COMPRESSED_RGBA_S3TC_DXT5_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 Khronos Ratified Extension Specification> |
Browser-Kompatibilität
Loading…