Конвертация изображений из Fable 3

Авторы статьи: Altaris, Torionel

В этом руководстве мы рассмотрим формат .TEX, основные нюансы процесса извлечения изображений, Fable 3 TEX Convertor — программу для конвертации изображений Fable 3, а также дополнительные утилиты.

1. Формат .TEX

.TEX (Texture File) — файл растрового изображения, который используются для хранения текстур. Он может создать видимость различных поверхностей и может быть применен к 2D- и 3D-объектам.

Часто используется в видеоиграх, которые поддерживают 3D-отображение текстуры. Формат .TEX может отличаться в различных играх, но цель использования одинакова. К сожалению, он с большим трудом открывается в графических редакторах, поэтому в данной статье будет описана конвертация файлов этого формата в более удобный для моддинга.

Извлечение изображений

Изображения извлекаются с помощью программы BNK Browser из файла globals_textures.bnk. Как это делать, описано в статье "Извлечение данных из Fable 3" в нашем гайде по моддингу Fable 3. При извлечении файлов обратите внимание на левую часть программы BNK Browser: она настроена таким образом, чтобы делить текстуры по категориям. Это сильно упрощает поиск нужной текстуры.

Fable 3 TEX Convertor

Это обыкновенный .BAT-файл, связанный с HEX-редактором. Данная программа конвертирует изображения из формата .TEX в .DDS и наоборот. Она имеет довольно примитивный интерфейс и шаблонное выполнение команд, но все же обладает несколькими плюсами, такими как безотказность и быстрота работы. Скачать можно у нас на сайте.

Конвертация из .TEX в .DDS

Чтобы конвертировать текстуру, нам необходимы две вещи — распакованный архив с программой и извлеченное изображение в формате .TEX. Берем нужную нам текстуру и перетаскиваем (drag-and-drop) на .bat файл Fable3_TEX_convert, как показано на скринах ниже.

Появится окно, в котором программа спросит, какой размер изображения выбрать для конвертации. Нам нужно ввести цифровое значение от 0 до 9, которое соответствует определенному расширению.

Есть один нюанс: если выбрать несоответствующий текстуре размер, конвертация будет некорректной и изображение нельзя будет редактировать. Я нашел выход для четкого выбора размера — сделать таблицу соответствия размера файла размеру изображения:

  • 11 Кбайт — 128x128;
  • 43 Кбайт — 256x256;
  • 171 Кбайт — 512x512;
  • 683 Кбайт — 1024x1024;
  • 342 Кбайт — 1024x512;

Размеры, которых нет в таблице, встречаются крайне редко, и нет смысла их детально рассматривать.

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

DXTC (DirectX Texture Compression) — метод сжатия текстур DirectX. DXTC — это формат сжатия текстур с потерями, с фиксированным размером выходных данных. Благодаря алгоритму сжатия, формат DXTC стал широко использованным форматом сжатия текстур для трехмерной компьютерной графики с аппаратным ускорением. Существует не менее пяти разновидностей формата DXTC (от DXT1 до DXT5 включительно).

DXT1 — этот формат из всех разновидностей DXTC обеспечивает самое сильное сжатие: каждый блок из 16 пикселей преобразуется в 64 бита. Также используются два различных 16-битных значения цветов RGB (5:8:5) и 2-битная таблица подстановок 4х4. DXT1 не поддерживает альфа-каналы.

DXT3 — при использовании этого формата каждый блок из 16 пикселей преобразуется в 128 бит: 64 бита данных альфа-канала и 64 бита данных цвета. Формат DXT3 подходит для изображений и текстур с резким изменением альфа-канала, т.е. прозрачности.

DXT5 — при использовании этого формата каждый блок из 16 пикселей преобразуется в 128 бит: 64 бита данных альфа-канала и 64 бита данных цвета. Формат DXT5 подходит для изображений и текстур с плавным, постепенным изменением альфа-канала.

Итак, мы выбрали значение 1 (DXT1), 2 (DXT3) или 3 (DXT5). Программа задает нам последний вопрос перед конвертацией: конвертировать все файлы формата .TEX из нашего каталога (1) или только выбранный файл (2). Лично я пользуюсь только вторым, так как расширений много и одна или несколько текстур обязательно испортятся.

После выбора последнего параметра программа укажет имя изображения, выбранное расширение и альфа-канал, так же слово "done" ("готово"). Всё, текстура прошла конвертирование, можно использовать ее в своих темных целях моддинга.

Конвертация из .DDS в .TEX

После редактирования текстуры ее необходимо перевести обратно в формат .TEX. Используем всё тот же Fable 3 TEX Convertor и так же перетаскиваем нужную нам текстуру на .bat файл (см. выше). Программа сразу же дает нам три варианта выбора: конвертировать в формат .TEX (1) или изменить текущее расширение (2) и альфа-канал (3). Если честно, то второй и третий пункты бесполезны, если мы изначально напартачили в первом выборе, а изменить такие параметры можно в любом графическом редакторе с большей пользой.

После выбора первого пункта программа не оставляет нас и задает вопрос, использовать нам все файлы формата .DDS для конвертации (1) или только используемый нами файл (2). Я всегда склоняюсь ко второму пункту, причины я уже указывал выше.

Как только все параметры введены, программа укажет имя текстуры и слово "done" ("готово").  На этом конвертация завершена.

Дополнительные утилиты (устаревший раздел)

Лично от себя хочу порекомендовать несколько полезных вещей, которые помогут вам в удобном редактировании текстур:

  • XnView — прекрасная программа для просмотра и минимальной редакции текстур в формате .DDS, да и любых других известных форматов. Скачать данную программу можно с официального сайта.
  • Photoshop Plugins 8.55 — плагин для Photoshop, позволяющий редактировать текстуры в формате .DDS. Данная версия для Win32, скачать ее можно у нас на сайте.
  • Photoshop Plugins x64 8.55 — такой же плагин для Win64, скачать можно у нас на сайте.

Больше интересного о Fable — в нашем Telegram-канале