Использование частей юнита из другой фракции
Цель этого руководства: объяснить, как вы можете легко взять деталь от юнита из одной фракции и использовать ее для юнита из другой фракции.
Необходимые инструменты, используемые для этого: PFM и GIMP+dds-плагин.
Я расскажу здесь только о методе в создании собственных частей. Вы можете также обратиться к руководству l'Aigle о сохранении dds-файлов без утраты их качества.
Я полагаю, вы знаете, как создавать pack-файлы, и я не буду здесь объяснять эту часть.
Часть 1: Определяем, что нам необходимо: смотрим на варианты и текстуры
Давайте допустим, что мы хотим создать нового австрийского юнита, со стандартной униформой (скажем австрийская линейная пехота), но воспользуемся шлемом «Tartleton» (такой же, как у британской конной артиллерии).
Во-первых, мы воспользуемся PFM для открытия файла data.pack и посмотрим на таблицу «uniforms». Здесь мы увидим, что австрийский юнит использует как вариант униформу «Austria_Inf_Austrian_German_Fusiliers». И конечно, если мы посмотрим на британскую конную артиллерию, то мы увидим – запись «Britain_Art_Horse_British_6_lber».
![Изображение](/board/style_images/plus.gif)
Во-первых, мы найдем модификацию «Austria_Inf_Austrian_German_Fusiliers», например, «austria_inf_line_austrian_german_fusiliers.soldier.unit_variant».
![Изображение](/board/style_images/plus.gif)
![Изображение](/board/style_images/plus.gif)
Поэтому мы просто переименуем экспортированный файл unit_variant на «austria_MyNewUnit.soldier.unit_variant». А затем мы импортируем его в наш mod-файл. Это важно писать в начале названия префикс «austria_», так как именно это указывает, из какой atlas-текстуры ядро игры берет часть текстуры.
![Изображение](/board/style_images/plus.gif)
Этот файл содержит все текстуры для Австрии. Но мы видим, что он не содержит текстуру для британского шлема, который мы хотим позаимствовать.
![Изображение](/board/style_images/plus.gif)
![Изображение](/board/style_images/plus.gif)
![Изображение](/board/style_images/plus.gif)
Если вы попытаетесь запустить это сейчас, то это работать не будет. Потому что, в новом варианте юнита текстура все еще «VariantModels/UnitParts/Euro/Hats/Shako/Austrian_Basic_Shako/texture», и эта текстура не приспособлена к этому «mesh»: юнит будет выглядеть очень странным.
![Изображение](/board/style_images/plus.gif)
Поэтому, прежде чем мы направимся дальше, нам надо взять деталь из файла britian_diffuse.dds, соответствующую «Tartleton», и скопировать ее в наш файл «austria_diffuse», чтобы она стала доступна.
Первая здесь проблема: как узнать точно, какую часть использовать? Рассматривая вариант британской артиллерии, в строке для каски в столбце «texture» указано «VariantModels/UnitParts/Euro/Hats/Tartleton/tex/texture».
Это фактически ссылка на точные координаты и мы найдем ее в файле britain_diffuse.atlas. Итак, с помощью PFM давайте посмотрим это. Во-первых, в верхней части PFM проверьте флажок «Toggle coordinate as Pixel Units».
Найдите строчку для детали нашего юнита, а справа увидите соответствующие цифровые значения размера и систему координат. Ширина и высота – 384х384. И координаты «X1, Y1», показывающие значения «1152, 2944». Запишите эти значения.
![Изображение](/board/style_images/plus.gif)
Мы сейчас извлечем файл britain_diffuse.dds и откроем его в программе GIMP.
Нам необходимо скопировать именно ту деталь, которая нам необходима. С ней мы проведем испытание наглядно, но это далеко не просто, поэтому нам необходима предельная точность. Для этого мы воспользуемся лучшим способом.
Примените значок «Прямоугольное выделение» из «Панели инструментов» редактора, и выделите любую деталь изображения (где именно – не имеет значение).
![Изображение](/board/style_images/plus.gif)
![Изображение](/board/style_images/plus.gif)
Таким образом, взглянув на файл Austrian_diffuse.atlas, мы находим, что для «Casquet», координаты 1920 и 1024. Размер все еще – 384x384.
![Изображение](/board/style_images/plus.gif)
![Изображение](/board/style_images/plus.gif)
![Изображение](/board/style_images/plus.gif)
![Изображение](/board/style_images/plus.gif)
Part 3: Использование новой текстуры
Эта часть проста. Сейчас у нас имеется измененный файл «austria_diffuse», где текстура «Casquet» была заменена текстурой «Tartleton». Тем не менее, мы только заменили изображение. В файле austria_diffuse.atlas имя все еще «VariantModels/UnitParts/Euro/Hats/Casquet/Infantry/texture».
Поэтому сейчас, зайдем в «austria_MyNewUnit.soldier.unit_variant», редактируем часть соответствующую «Hats», и в текстуре используем «VariantModels/UnitParts/Euro/Hats/Casquet/Infantry/texture».
![Изображение](/board/style_images/plus.gif)
Part 4: Окончательное оформление нового юнита
Для завершения юнита:
- используйте этот же метод с «gloss», «normal» и «colour mask». Нам нужно в каждом «austria_XXXX.dds» скопировать поверх изображения «Casquet» изображение шлема «Tartleton»;
- в таблицу «uniforms», добавить униформу «austria_MyNewUnit» для нового юнита.
Удачи в работе!
![:hi:](/board/public/style_emoticons/default/hi.gif)