WEBGL_compressed_texture_pvrtc

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Расширение WEBGL_compressed_texture_pvrtc часть WebGL API и представляет четыре сжатых формата текстур PVRTC.

Сжатые текстуры уменьшают количество памяти, используемые в GPU для хранения, позволяя большее разрешение для текстур или большее количество текстур с одинаковым разрешением.

WebGL расширения доступны через метод WebGLRenderingContext.getExtension(). Для подробностей смотри также Использование расширений в туториале по WebGL.

Примечание: Обычно PVRTC доступен только на мобильных устройствах с чипсетом PowerVR. Используется во всех поколениях iPhone, iPod Touch и iPad и поддерживается на определённых Android устройствах, использующих PowerVR GPU.

Версии контекста, поддерживающие расширение: WebGL1 , и WebGL2.

Константы

Форматы сжатых текстур представлены четырьмя константами и могут быть использованы в двух функциях: compressedTexImage2D() — параметры высота и ширина должны соответствовать степени 2 compressedTexSubImage2D() — параметры высоты и ширины должны быть равны размеру текстуры, а значения параметров xoffset и yoffset должны быть 0.

ext.COMPRESSED_RGB_PVRTC_4BPPV1_IMG

RGB сжатие в 4-битном режиме. Один блок на каждые 4×4 пикселей.

ext.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG

RGBA сжатие в 4-битном режиме. Один блок на каждые 4×4 пикселей.

ext.COMPRESSED_RGB_PVRTC_2BPPV1_IMG

RGB сжатие в 2-битном режиме. Один блок на каждые 8×4 пикселей.

ext.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG

RGBA сжатие в 2-битном режиме. Один блок на каждые 8×4 пикселей.

Примеры

js
var ext = gl.getExtension("WEBGL_compressed_texture_pvrtc");

var 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,
);

Спецификации

Specification
WebGL WEBGL_compressed_texture_pvrtc Extension Specification

Совместимость с браузерами

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
WEBGL_compressed_texture_pvrtc

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support

Смотрите также