ПВРТС
PVRTC (сжатие текстур PowerVR) и PVRTC2 — это семейство форматов сжатия текстур с фиксированной скоростью и потерями, используемых в . технологиях PowerVR MBX (только PVRTC), SGX и Rogue Алгоритм PVRTC описан в статье Саймона Фенни « Сжатие текстур с использованием низкочастотной модуляции сигнала », представленной на выставке Graphics Hardware 2003 .
Они отличаются от блочных форматов текстур, таких как S3TC и Ericsson Texture Compression (ETC), тем, что сжатое изображение представлено двумя изображениями с более низким разрешением, которые билинейно масштабируются, а затем смешиваются в соответствии с низкой точностью, попиксельным весом. Они также отличаются тем, что поддерживают данные ARGB как в режиме 4 бита на пиксель, так и в режиме 2 бита на пиксель.
PVRTC — это формат сжатых текстур, используемый в Nokia N9 и всех поколениях iPhone , iPod Touch и iPad . Это также поддерживается [1] в некоторых устройствах Android, использующих графические процессоры PowerVR.
Структура данных
[ редактировать ]И в PVRTC, и в PVRTC2 данные текстур хранятся в блоках (но учтите, что декодирование любого набора текселов 2x2 требует доступа к 4 из этих блоков). Блок данных всегда занимает 64 бита (8 байтов) пространства хранения/памяти и таким образом, в 4-битном режиме (4bpp) на каждые 4×4 пикселя будет приходиться один блок. В 2-битном режиме (2-bpp) на каждые 8×4 пикселя будет приходиться один блок.
Например, текстура PVRTC размером 1024×1024 4 бита на пиксель будет иметь 65 536 блоков и занимать 524 288 байт памяти/хранилища. В некоторых аппаратных реализациях блоки располагаются в варианте порядка Мортона .
В PVRTC имеется шесть различных переменных. [2] В каждом блоке хранятся: данные модуляции (32 бита), сквозной альфа-флаг (1 бит), цвет A (15 бит), непрозрачный флаг цвета A (1 бит), цвет B (14 бит) и непрозрачный флаг цвета B ( 1 бит).
В PVRTC2 имеется шесть различных переменных. [3] сохраняются в одном блоке: данные модуляции (32 бита), флаг модуляции (1 бит), цвет B (14 бит), флаг жесткого перехода (1 бит), цвет A (15 бит) и флаг непрозрачности (1 бит).
Хотя в PVRTC флаги непрозрачности могут быть установлены независимо для цветов A и B, в PVRTC2 цвет A и цвет B должны быть в одном и том же формате (т.е. либо оба RGB, либо оба RGBA).
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ http://withimagination.imgtec.com/wp-content/uploads/2013/03/Why_use_PVRTC.png [ файл изображения с пустым URL-адресом ]
- ^ http://withimagination.imgtec.com/wp-content/uploads/2013/02/03_PVRTC_data_word.png [ файл изображения с пустым URL-адресом ]
- ^ http://withimagination.imgtec.com/wp-content/uploads/2013/01/A-PVRTC2-data-word.jpg [ файл изображения с пустым URL-адресом ]