http://www.ixbt.com/video/s3tc.html писал(а):В процессе работы S3TC текстурная карта разбивается на блоки, каждый из которых представляет собой матрицу 4х4 текселя. При этом для лучшей оптимизации каждый тексель представлен двумя битами из доступных для матрицы 32 бит. Кроме этого, каждая из матриц имеет два поля, одно из которых содержит данные о явно заданном цвете в 16-битном представлении, совместимом с форматом RGB565, а другое поле содержит информацию о дополнительном цвете, который определяется простой интерполяцией явно заданного цвета. Результатом описанных выше действий является формирование четырехцветной таблицы выборки, которая и используется для окончательного определения настоящего цвета любого из 16 текселей, формирующих матрицу. Стоит заметить, что в обычных условиях те же 16 текселей кодировались бы с использованием 64 бит, т.е. в среднем по 4 бита на тексель. Для определения простого прозрачного цвета требуется один бит (код цвета), данные для которого получаются за счет резервирования одного из четырех цветов для индикации, что данный тексель прозрачен, и третий цвет, являющийся средним явно заданных цветов, определяет цвет прозрачного текселя. Взаимное расположение двух кодированных цветов определяется в зависимости от того, содержит ли блок сплошную закраску или имеют место прозрачные тексели. Когда матрица определена как один из блоков, имеющих прозрачные тексели, в четырехбитном представлении две единицы (11) являются индикацией прозрачности текселя, а значение цвета этого текселя определяется как простое среднее двух кодированных цветов.
Ниже приведена иллюстрация блока текселей в первичном виде, 2-х битная индексная матрица, с помощью которой определяется вид блока текселей после сжатия. Нетрудно заметить, что каждый тексель в блоке после сжатия определяется одним из четырех цветов таблицы выборки, наложенным на значение текселя в исходном блоке.
code color0 > color1 color0 <= color1
00 color0 color0
01 color1 color1
10 (2*color0 + color1) / 3 (color0 + color1) / 2
11 (color0 + 2*color1) / 3 Black
zed писал(а):буквально вчера выяснилось, что если GE 5.1 запускать в режиме OpenGL, то в кэш по прежнему кладутся всё те же jpg
Chiezo
Если есть под рукой утилитка для конвертирования, попробуйте конвертнуть что-нить из тех примеров что я выкладывал. Или киньтесь утилиткой?
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2