WEBGL_compressed_texture_s3tc_srgb Erweiterung
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more support for this feature? Tell us why.
Die WEBGL_compressed_texture_s3tc_srgb Erweiterung ist Teil der WebGL API und stellt vier S3TC-komprimierte Texturformate für den sRGB-Farbraum bereit.
Komprimierte Texturen reduzieren den benötigten Speicherplatz für das Speichern einer Textur auf der GPU, wodurch höher aufgelöste Texturen oder mehr Texturen mit der gleichen Auflösung möglich sind.
WebGL-Erweiterungen sind verfügbar über die Methode WebGLRenderingContext.getExtension(). Für weitere Informationen siehe auch Verwendung von Erweiterungen im WebGL-Leitfaden.
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 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
| Spezifikation |
|---|
| WebGL WEBGL_compressed_texture_s3tc_srgb Extension Specification> |