Сообщество Империал: Создание моделей VariantMeshDefinitions. Часть 1. - Сообщество Империал

K0rw1n

Создание моделей VariantMeshDefinitions. Часть 1.

Разбираемся с моделями юнитов
Тема создана: 16 января 2014, 16:42 · Автор: K0rw1n
 K0rw1n
  • Imperial
Imperial
Форумчанин

Дата: 16 января 2014, 16:42

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

Пока нам не доступно создание новых моделей, и импорт их в игру, мы можем использовать лишь те модели что есть, но мы может править текстуры, плюс Рим2 наделён рядом отличных особенностей, таких как подкраска вертексов(например можно не вставляя новых текстур подкрасить\перекрасить те что есть), мы может так же добавлять рандомность различным элементам( плюмажам например) используя для одного шлема несколько их видов, так же нам доступно нанесению с помощью "альфа маски" на элементы различных узоров, т.е нам не нужно делать щиты с различными узорами, мы можем накладывать с референсных текстур узоров рисунок сверху на исходные. Так же разнообразие среди вариаций и используемых моделей ( т.е меш и текстура), рандомно появляющихся на одном юните, т.е отсутствуют поголовные клоны в отрядах.

Файлы VariantMeshDefinition юнитов лежат в папке VariantMeshes, файлы из которых они собираются в VariantModels , и запакованы в models_rome2 .pack (большинство) и models.pack

Imp

Для работы нам понадобятся:

1. Pack File Manager
2. Сама игра (точнее файлы моделей)
3. Текстовый редактор (например стандартный блокнот)

Рассмотрим структуру файла. В качестве примера я буду использовать Gre_Hoplites.VariantMeshDefinition.

Imp

В первую очередь хочется отметить интуитивно-понятные наименования блоков в файле. Курсивом отмечены мои комментарии:

<VARIANT_MESH> - Основной блок в который всё и внесено по этому юниту(внешний вид). Все блоки имеют структуру: <открытие блока>, </закрытие блока> ,<пустой блок />.
<SLOT name="skin" > - Слот "Кожа", в данном случае обозначает блок юнита. В файле брони и оружия первый блок будет называться иначе.
<VARIANT_MESH> - Блок включающий в себя блоки по юниту с данным типом кожи (текстурой). Таких блоков в отряде может быть несколько, следовательно можно создавать юниты с абсолютно различным вооружением, одеждой , типом кожи и тд.
<SLOT name="hair" > - Слот "Волосы"
<VARIANT_MESH_REFERENCE definition="VariantMeshes/_VariantModels/man/skin/greek_game_skin.VariantMeshDefinition" /> - В данном случае здесь прописан внешний вид юнита греческого типа. Все файлы ссылаются друг на друга, и тут мы видим ссылку на другой файл, а именно файл, где описаны кожа и волосы греков.
</SLOT> - Закрытие блока "Волосы"
<SLOT name="beards" /> - Слот "Борода\усы", как видим это пустой блок, но никто не мешает нам добавить запись.
<SLOT name="helmets" > - Слот "Шлемы", ниже вы видите несколько записей, это позволяет юниту рандомно использовать все виды шлемов, скорее рандом рассчитан: тут 5 предметов значит, каждый будет у 1/5 юнитов. Но если вы скажем добавите две одинаковые вещи то шанс их появления среди 5остальных уже будет 2/5, если 3 одинаковые то соответственно у 3/5 юнитов будет эта вещь.
<VARIANT_MESH_REFERENCE definition="VariantMeshes/_VariantModels/man/helmets/hellenic_thracians_basic. VariantMeshDefinition" /> - прописан греческий шлем фракийского типа без плюмажа.
<VARIANT_MESH_REFERENCE definition="VariantMeshes/_VariantModels/man/helmets/hellenic_thracians_crests. VariantMeshDefinition" /> - прописан греческий шлем фракийского типа с плюмажем.
<VARIANT_MESH_REFERENCE definition="VariantMeshes/_VariantModels/man/helmets/hellenic_attic.VariantMeshDefinition" /> - прописан греческий шлем аттического типа.
<VARIANT_MESH_REFERENCE definition="VariantMeshes/_VariantModels/man/helmets/hellenic_attic_crest.VariantMeshDefinition" /> - прописан греческий шлем аттического типа с плюмажем.
<VARIANT_MESH_REFERENCE definition="VariantMeshes/_VariantModels/man/helmets/hellenic_phyrgians_basic. VariantMeshDefinition" /> - прописан шлем фригийского типа без плюмажа.
</SLOT> - Закрытие блока "Шлемы"
<SLOT name="clothing" > - Слот "Одежда"
<VARIANT_MESH_REFERENCE definition="VariantMeshes/_VariantModels/man/armour/linothorax.VariantMeshDefinition" /> - юнитам прописана в качестве одежды линторакс, но в файле линторакса прописывается помимо самой брони одежда надеваемая под и на него (туники, штаны, панцири и тд.)
</SLOT> - Закрытие слота "Одежда"
<SLOT name="cloaks" /> - Слот "Плащи", пустой.
<SLOT name="greaves" > - Слот "Поножи", слот используется для прописывания поножей, и сапог.
<VARIANT_MESH_REFERENCE definition="VariantMeshes/_VariantModels/man/greaves/greaves.VariantMeshDefinition" /> - прописаны поножи.
<VARIANT_MESH_REFERENCE definition="VariantMeshes/_VariantModels/man/greaves/graves_basic.VariantMeshDefinition" /> - прописаны поножи без украшений.
</SLOT> - Закрытие слота "Поножи"
<SLOT name="shield" attach_point="weapon_03" > - Слот "Щиты". Про attach_point="weapon_03" смотрите ниже.
<VARIANT_MESH_REFERENCE definition="VariantMeshes/_VariantModels/man/shield/hellenic_hoplon_painted_hoplite. VariantMeshDefinition" /> - добавлен греческий гоплон с рисунком
<VARIANT_MESH_REFERENCE definition="VariantMeshes/_VariantModels/man/shield/hellenic_hoplon_painted_hoplite. VariantMeshDefinition" /> - добавлен греческий гоплон с рисунком
<VARIANT_MESH_REFERENCE definition="VariantMeshes/_VariantModels/man/shield/hellenic_hoplon_painted_hoplite. VariantMeshDefinition" /> - добавлен греческий гоплон с рисунком
<VARIANT_MESH_REFERENCE definition="VariantMeshes/_VariantModels/man/shield/hellenic_hoplon_hoplite. VariantMeshDefinition" /> - добавлен греческий гоплон
</SLOT> - Закрытие слота "Щиты"
<SLOT name="weapon_1" attach_point="weapon_01" > - Слот для первого оружия
<VARIANT_MESH_REFERENCE definition="VariantMeshes/_VariantModels/man/weapons/short_spears.VariantMeshDefinition" /> - выбраны короткие копья
</SLOT> - Закрытие слота первого оружия.

<SLOT name="weapon_2" /> - Слот второго оружия, пустой.
<SLOT name="weapon_3" /> - Слот третьего оружия, пустой.
<SLOT name="weapon_4" /> - Слот четвертого оружия, пустой.
</VARIANT_MESH> - Закрытие блока юнита с греческим типом
</SLOT> - Закрытие слота "Кожа"
</VARIANT_MESH> - Закрытие основного блока

attach_point= - Оружие в модели привязывается (attach) к кости скелета.
В данной модели они аттачатся так:
"weapon_1": bone_1
"weapon_2": bone_2
"shield": bone_3
"weapon_3": bone_4
"weapon_4": bone_5

Поэтому модель юнита может владеть тремя типами оружия + щит + метательный предмет:

Weapon bone 1: копья, пики, рамфайи, фальксы, знамена, праща, дротик как копье – т.е сюда попадают колющее оружие и двуручное колюще-рубящее и почему-то праща.
Weapon bone 2 : булавы, кинжалы, мечи ¬– т.е оружие ближнего боя.
Weapon bone 3 : щиты
Weapon bone 4 : луки
Weapon bone 5 : стрелы, дротики, камни пращи – т.е оружие используемое в качестве метательного снаряда.

Из нашего примера мы видим, что наш гоплит вооружен только коротким копьем и щитом-асписом (гоплоном). А как же меч? – спросите вы. Ведь греческие гоплиты имели на вооружении еще и меч махайру или копис. Давайте пропишем его.

Вместо строки :
<SLOT name="weapon_2" />

Добавим:
<SLOT name="weapon_2" attach_point="weapon_02" >
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/weapons/kopis_01.rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/weapons/kopis_02.rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/weapons/kopis_03.rigid_model_v2" />
</SLOT>

Здесь, если вы заметили, я добавил вместо ссылки на файл с моделью, ссылку на саму модель, поэтому строки немного изменилась, вместо <VARIANT_MESH_REFERENCE definition=, прописано <VARIANT_MESH model=. Правда гоплиты пока не смогут воспользоваться мечами, ибо нужно им изменить анимацию, но это в отдельном туториале.

Разбор моделей одежды и оружия будут во второй части.

Продолжение следует...
     Похожие Темы
    СЛучшая часть Civilization
    Лучшая часть Цивилизации.
    Автор в виталя_лихатск...
    Обновление Вчера, 08:26
    ШСоздание вручную скриптов HotSeatScript и Force Diplomacy. Установка
    RTW, BI, Alex. На Win7 и выше.
    Автор a as1991
    Обновление 24 марта 2024, 09:30
    КМятежная Луна, часть 1: Дитя огня (2023)
    США, Венгрия. Жанр: Фантастика . Год: 2023
    Автор G Gorthauerr
    Обновление 18 марта 2024, 21:33
    Воспользуйтесь одной из соц-сетей для входа
    РегистрацияВход на форум 
    «Империал» · Условия · Ответственность · Визитка · 28 мар 2024, 11:39 · Зеркала: Org, Site, Online · Эльдорадо казино · Gold казино · Счётчики