WEBGL_compressed_texture_s3tc_srgb 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_srgb Erweiterung ist Teil der WebGL API und stellt vier S3TC-komprimierte Texturformate für den sRGB-Farbraum bereit.

Komprimierte Texturen reduzieren die Menge an Speicher, die benötigt wird, um eine Textur auf der GPU zu speichern, was höhere Auflösungen oder mehr Texturen derselben Auflösung ermöglicht.

WebGL-Erweiterungen sind über die Methode WebGLRenderingContext.getExtension() verfügbar. Weitere Informationen finden Sie auch unter Verwendung von Erweiterungen im WebGL Leitfaden.

Hinweis: Diese Erweiterung ist sowohl für die WebGL1 als auch für die WebGL2 Kontexte verfügbar.

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 in einem sRGB-Bildformat.

ext.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT

Ein DXT1-komprimiertes Bild in einem sRGB-Bildformat mit einem Ein/Aus-Alpha-Wert.

ext.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT

Ein DXT3-komprimiertes Bild in einem sRGBA-Bildformat.

ext.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT

Ein DXT5-komprimiertes Bild in einem sRGBA-Bildformat.

Beispiele

js
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

Siehe auch