WEBGL_compressed_texture_pvrtc-Erweiterung
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more browser support for this feature? Tell us why.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die Erweiterung WEBGL_compressed_texture_pvrtc ist Teil der WebGL-API und stellt vier komprimierte PVRTC-Texturformate bereit.
Komprimierte Texturen verringern den Speicherbedarf einer Textur auf der GPU. Dadurch können Texturen mit höherer Auflösung oder mehr Texturen mit derselben Auflösung verwendet werden.
WebGL-Erweiterungen sind über die Methode WebGLRenderingContext.getExtension() verfügbar.
Weitere Informationen finden Sie unter WebGL-Erweiterungen verwenden.
Hinweis: PVRTC ist in der Regel nur auf Mobilgeräten mit PowerVR-Chipsätzen verfügbar. Es wird in allen Generationen von iPhone, iPod Touch und iPad verwendet und auf bestimmten Android-Geräten mit einer PowerVR-GPU unterstützt.
Diese Erweiterung ist sowohl in WebGL1- als auch in WebGL2-Kontexten verfügbar.
Hinweis:
Auf iOS-Geräten heißt diese Erweiterung WEBKIT_WEBGL_compressed_texture_pvrtc.
Konstanten
Die komprimierten Texturformate werden durch vier Konstanten bereitgestellt und können in zwei Funktionen verwendet werden: compressedTexImage2D() (wobei die Parameter height und width Zweierpotenzen sein müssen) und compressedTexSubImage2D() (wobei die Parameter height und width den aktuellen Werten der vorhandenen Textur entsprechen und die Parameter xoffset und yoffset den Wert 0 haben müssen).
ext.COMPRESSED_RGB_PVRTC_4BPPV1_IMG-
RGB-Komprimierung im 4-Bit-Modus. Ein Block für jeweils 4 × 4 Pixel.
ext.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG-
RGBA-Komprimierung im 4-Bit-Modus. Ein Block für jeweils 4 × 4 Pixel.
ext.COMPRESSED_RGB_PVRTC_2BPPV1_IMG-
RGB-Komprimierung im 2-Bit-Modus. Ein Block für jeweils 8 × 4 Pixel.
ext.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG-
RGBA-Komprimierung im 2-Bit-Modus. Ein Block für jeweils 8 × 4 Pixel.
Beispiele
const ext = gl.getExtension("WEBGL_compressed_texture_pvrtc");
const texture = gl.createTexture();
gl.bindTexture(gl.TEXTURE_2D, texture);
gl.compressedTexImage2D(
gl.TEXTURE_2D,
0,
ext.COMPRESSED_RGB_PVRTC_4BPPV1_IMG,
512,
512,
0,
textureData,
);
Spezifikationen
| Spezifikation |
|---|
| WebGL WEBGL_compressed_texture_pvrtc Extension Specification> |