WEBGL_compressed_texture_pvrtc
Расширение WEBGL_compressed_texture_pvrtc
часть WebGL API и представляет четыре сжатых формата текстур PVRTC.
Сжатые текстуры уменьшают количество памяти, используемые в GPU для хранения, позволяя большее разрешение для текстур или большее количество текстур с одинаковым разрешением.
WebGL расширения доступны через метод WebGLRenderingContext.getExtension()
(en-US). Для подробностей смотри также Использование расширений в туториале по WebGL.
Доступность: Обычно PVRTC доступен только на мобильных устройствах с чипсетом PowerVR. Используется во всех поколениях iPhone, iPod Touch и iPad и поддерживается на определённых Android устройствах, использующих PowerVR GPU.
Версии контекста, поддерживающие расширение: WebGL1 , и WebGL2 (en-US).
Константы
Форматы сжатых текстур представлены четырьмя константами и могут быть использованы в двух функциях:
compressedTexImage2D()
(en-US) — параметры высота и ширина должны соответствовать степени 2
compressedTexSubImage2D()
(en-US) — параметры высоты и ширины должны быть равны размеру текстуры, а значения параметров 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 пикселей.
Примеры
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 | Status | Comment |
---|---|---|
WEBGL_compressed_texture_pvrtc Определение 'WEBGL_compressed_texture_pvrtc' в этой спецификации. |
Черновик | Начальное определение. |
Браузерная совместимость
BCD tables only load in the browser
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.