Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

EXT_texture_compression_bptc 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 EXT_texture_compression_bptc-Erweiterung ist Teil der WebGL API und stellt 4 BPTC-komprimierte Texturformate bereit. Diese Kompressionsformate werden in Microsofts DirectX API als BC7 und BC6H bezeichnet.

WebGL-Erweiterungen sind mittels der Methode WebGLRenderingContext.getExtension() verfügbar. Weitere Informationen finden Sie unter Erweiterungen verwenden im WebGL-Leitfaden.

Hinweis: Die Unterstützung hängt vom Grafiktreiber des Systems ab. Es gibt keine Unterstützung unter Windows.

Diese Erweiterung ist sowohl für WebGL1- als auch WebGL2-Kontexte verfügbar.

Konstanten

Die komprimierten Texturformate werden durch 4 Konstanten bereitgestellt und können in zwei Funktionen verwendet werden: compressedTexImage2D() und compressedTexSubImage2D().

ext.COMPRESSED_RGBA_BPTC_UNORM_EXT

Komprimiert 8-Bit-Festwertdaten. Jeder 4x4-Block von Texeln besteht aus 128 Bits von RGBA- oder Bilddaten. Siehe auch BC7-Format.

ext.COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT

Komprimiert 8-Bit-Festwertdaten. Jeder 4x4-Block von Texeln besteht aus 128 Bits von SRGB_ALPHA- oder Bilddaten. Siehe auch BC7-Format.

ext.COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT

Komprimiert hochdynamische Bereichswerte mit Vorzeichen und Gleitkommazahlen. Jeder 4x4-Block von Texeln besteht aus 128 Bits von RGB-Daten. Es enthält nur RGB-Daten, sodass der zurückgegebene Alphawert 1.0 ist. Siehe auch BC6H-Format.

ext.COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT

Komprimiert hochdynamische Bereichswerte ohne Vorzeichen und Gleitkommazahlen. Jeder 4x4-Block von Texeln besteht aus 128 Bits von RGB-Daten. Es enthält nur RGB-Daten, sodass der zurückgegebene Alphawert 1.0 ist. Siehe auch BC6H-Format.

Beispiele

js
const ext = gl.getExtension("EXT_texture_compression_bptc");

const texture = gl.createTexture();
gl.bindTexture(gl.TEXTURE_2D, texture);

gl.compressedTexImage2D(
  gl.TEXTURE_2D,
  0,
  ext.COMPRESSED_RGBA_BPTC_UNORM_EXT,
  128,
  128,
  0,
  textureData,
);

Spezifikationen

Spezifikation
WebGL EXT_texture_compression_bptc Extension Specification

Browser-Kompatibilität

Siehe auch