Оглавление
Сжатие текстуры S3
-
Основы блочного сжатия текстур
- Текстуры могут быть сжаты с использованием различных алгоритмов, включая BCn.
- BCn (Block Compression) – семейство алгоритмов сжатия текстур, разработанных Microsoft.
- Алгоритмы BCn поддерживают различные форматы, включая BC1, BC2, BC3, BC4, BC5, BC6H и BC7.
-
Формат BC1
- BC1 использует 4-битную кодировку для альфа-канала и 4-битную кодировку для цветовых данных.
- Алгоритм BC1 подходит для изображений с однородными цветами и альфа-значениями.
-
Формат BC2
- BC2 преобразует 16 пикселей в 128 бит, используя 64 бита для альфа-канала и 64 бита для цветовых данных.
- Данные о цвете интерпретируются как предварительно умноженные на альфа, что подходит для изображений с резкими переходами.
-
Формат BC3
- BC3 использует 64 бита для альфа-канала и 64 бита для цветовых данных, с интерполированной альфа-схемой.
- Алгоритм BC3 обычно дает лучшие результаты для альфа-градиентов по сравнению с BC2.
-
Дополнительные форматы
- BC4 и BC5 – это варианты BC3, которые повторно используют кодировку альфа-канала.
- BC6H и BC7 – это более сложные алгоритмы, которые обеспечивают высокое качество и точность.
-
Сравнение с S3TC
- Текстуры BCn могут быть дополнительно сжаты для хранения и распространения.
- BCn может быть объединен с Oodle Texture для улучшения сжатия.
- Microsoft разработала алгоритм BCPack для текстур, сжатых с использованием BCn.
-
Рекомендации
- Ссылки на внешние ресурсы, включая базу данных патентов США и поисковую систему USPTO.