EXT_texture_compression_bptc Erweiterung
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.
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
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
Specification |
---|
WebGL EXT_texture_compression_bptc Extension Specification |
Browser-Kompatibilität
BCD tables only load in the browser