Оптимизация текстур

Когда текстуры модели полностью готовы, самое время заняться их оптимизацией. Дело это важное и серьёзное, подходить к нему надо со всей ответственностью. Не хранить же текстуры как попало. Надо хорошо оптимизировать текстуры, чтобы максимально их ужать без потерь. На что следует обратить внимание?

Глубина цвета

Оптимизировать глубину цвета в изображении, т.е. количество битов на пиксель (bit per pixel – bpp). Тут можно посмотреть на исходники текстуры. Если в работе использовались файлы с bpp 24 и трёхцветной цветовой моделью, то нет смысла текстуру сохранять с bpp 32 с той же трёхцветной цветовой моделью. Как правило, 24 бита на пиксель вполне достаточно, по 8 бит на каждый из трёх каналов цветовой модели RGB. 32 bpp используется на 4-ёх каналах. Это, как правило, 3 канала цвета трёхцветной цветовой модели и 1 альфа-канал. Тот же Adobe Photoshop может конвертировать глубину цвета, или IrfanView.

Сжатие текстур без потерь

Не советую хранить текстуры в несжатом виде т.к. это очень затратно.

Выбрать оптимальный формат. Требование к формату: максимальное сжатие без потерь. Лучшим методом сжатия изображений без потерь является ZIP. ZIP всегда используется в формате PNG, и может использоваться в формате TIFF. Следовательно, выбираем формат PNG, либо TIFF с ZIP. Для хранения текстур используйте форматы PNG или TIFF со сжатием без потерь методом ZIP.

Для экономии места, всегда рекомендую выставлять самую высокую степень сжатия при сжатии без потерь. Метод сжатия без потерь ZIP у форматов изображений также поддерживает разные уровни сжатия. При сохранении PNG файла, такие программы как Adobe Photoshop, ACDSee, Microsoft Paint и Corel Photo-Paint не позволяют выставить вручную степень сжатия метода ZIP, но зато это позволяют сделать следующие программы: IrfanView и XnView. Причём, IrfanView на сжатии png максимального уровня сжатия (9 – best) изображения без альфа-канала очень часто (почти всегда) сжимает немного лучше, чем XnView, но изображения с альфа-каналом на сжатии png максимального уровня сжатия (9 – best) XnView сжимает лучше, чем IrfanView. Compression level у ZIP выставляется от 0 (none) до 9 (best). Default level 6.

Текущий уровень сжатия

К великому сожалению, посмотреть текущий уровень сжатия у изображения нельзя, т.е. приходится сжимать и смотреть по размеру примерный уровень сжатия исходного изображения.