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

View in English Always switch to English

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

js
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

Browser-Kompatibilität

Siehe auch