Сообщество Империал: Создание моделей VariantMeshDefinitions. Часть 2. - Моддинг Total War: Rome II (Rome 2 Total War) - Total War: Rome II (Rome 2: Total War) - Библиотека - Сообщество Империал




Imperial Уважаемый Гость, Сообщество Империал открывает многофункциональный и глобальный Каталог Модов Imperial
Imperial

Информация об авторе

K0rw1n
  • Автор: K0rw1n

Информация по статье

  • Добавлено: 08 Фев 2014, 15:51
  • Обновлено: 20 Дек 2014, 16:51
  • Просмотры: 2 108

Последние Статьи

  EB II v2.35 - X свиток

EB II v2.35 - X свитокSamaelBC · 18 Ноя 2019, 16:25

  EB II v2.35 - IX свиток

EB II v2.35 - IX свитокSamaelBC · 18 Ноя 2019, 16:21

  EB II v2.35 - VIII свиток

EB II v2.35 - VIII свитокSamaelBC · 06 Ноя 2019, 12:13

  EB II v2.35 - VII свиток

EB II v2.35 - VII свитокSamaelBC · 06 Ноя 2019, 12:10

  Тиреллы - сильнейшая фракция Westeros TW.

Тиреллы - сильнейшая фракция Westeros TW.Count Bagatur RF · 04 Ноя 2019, 18:11

  EB II v2.35 - VI свиток

EB II v2.35 - VI свитокSamaelBC · 26 Окт 2019, 13:14

  EB II v2.35 - V свиток

EB II v2.35 - V свитокSamaelBC · 26 Окт 2019, 13:11

  World of Infinitas на движке SWG мода.

World of Infinitas на движке SWG мода.Count Bagatur RF · 18 Окт 2019, 23:59

  Самые сложные фракции в Generals Zero Hour

Самые сложные фракции в Generals Zero HourCount Bagatur RF · 17 Окт 2019, 20:53

  EB II v2.35 - IV свиток

EB II v2.35 - IV свитокSamaelBC · 06 Окт 2019, 13:09

  EB II v2.35 - III свиток

EB II v2.35 - III свитокSamaelBC · 06 Окт 2019, 13:06

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

Описание: Разбираемся с моделями экипировки в Total War: Rome II
Первую часть туториала можно найти здесь.
Туториал по работе с текстурами - здесь.

В данной части туториала речь пойдет об создания моделей брони и оружия.
Итак начнем с головы, а если точнее с того, что на нее одевается – со шлемов.
Попробуем создать новый шлем для нашего гоплита.
За основу возьмем модель фригийского шлема, который был распространен среди греческих и эллинистических пехотинцев в то время.
Прописываем:
<VARIANT_MESH>
<SLOT name="helmets" >
<VARIANT_MESH model="variantmeshes/_variantmodels/man/helmets/hellenic_phyrgian_elite.rigid_model_v2" >
</VARIANT_MESH>
</SLOT>
</VARIANT_MESH>
И получаем рис 1.
Но простой шлем не годится для нашего гоплита (предположим он щеголь ). Добавим ему плюмаж, которые находятся в папке crests. А так как количество гопитов щеголей будет в отряде примерно 60%, то введем параметр ограничивающий наличие плюмажей на шлеме (probability ="0.6"). Тогда наш шлем будет выглядеть так (рис.2):
<VARIANT_MESH>
<SLOT name="helmets" >
<VARIANT_MESH model="variantmeshes/_variantmodels/man/helmets/hellenic_phyrgian_elite.rigid_model_v2" >
<SLOT name="top_crests" attach_point="crest_centre" probability ="0.6" >
<VARIANT_MESH model="variantmeshes/_variantmodels/man/crests/phyrgian_crest_1_white.rigid_model_v2" />
<VARIANT_MESH model="variantmeshes/_variantmodels/man/crests/phyrgian_crest_1_red.rigid_model_v2" />
<VARIANT_MESH model="variantmeshes/_variantmodels/man/crests/phyrgian_crest_1_black.rigid_model_v2" />
</SLOT>

</VARIANT_MESH>
</SLOT>
</VARIANT_MESH>
Кстати заметьте, что правило нескольких моделей действует и м модели снаряжения, т.е 1/3 из 60% гоплитов будет иметь плюмаж белого цвета, 1/3 – красного и 1/3 – черного.
Движок игры позволяет вешать плюмажи на правой и левой сторонах шлема. Пропишем, что появляться они будут только у 30% :
<VARIANT_MESH>
<SLOT name="helmets" >
<VARIANT_MESH model="variantmeshes/_variantmodels/man/helmets/hellenic_phyrgian_elite.rigid_model_v2" >
<SLOT name="top_crests" attach_point="crest_centre" probability ="0.6" >
<VARIANT_MESH model="variantmeshes/_variantmodels/man/crests/phyrgian_crest_1_white.rigid_model_v2" />
<VARIANT_MESH model="variantmeshes/_variantmodels/man/crests/phyrgian_crest_1_red.rigid_model_v2" />
<VARIANT_MESH model="variantmeshes/_variantmodels/man/crests/phyrgian_crest_1_black.rigid_model_v2" />
</SLOT>
<SLOT name="side_crests" attach_point="crest_left,crest_right" probability ="0.3" >
<VARIANT_MESH model="variantmeshes/_variantmodels/man/crests/white_horsehair_01.rigid_model_v2" />
<VARIANT_MESH model="variantmeshes/_variantmodels/man/crests/yellow_horsehair_01.rigid_model_v2" />
</SLOT>
</VARIANT_MESH>
</SLOT>
</VARIANT_MESH>
Итоговый результат мы можем наблюдать на рисунке 3.
Imperial

Украшения на боковых сторонах шлема могут быть и только на одной стороне, тогда имя слота приобретет вид:
<SLOT name="side_crests" attach_point="crest_left " probability ="0.3" > - плюмаж только на левой стороне;
<SLOT name="side_crests" attach_point=" crest_right" probability ="0.3" > - плюмаж только на правой стороне.
Переходим к тому, из-за чего гоплит получил свое имя – щиту гоплону или аспису.
<VARIANT_MESH>
<SLOT name="shields" >
<VARIANT_MESH>
<SLOT name="shields" >
<VARIANT_MESH model="variantmeshes/_variantmodels/man/shield/hellenic_shield_hoplon.rigid_model_v2" /> – простой щит без рисунка (рис. 4)
<VARIANT_MESH model="variantmeshes/_variantmodels/man/shield/hellenic_shield_hoplon_decal. rigid_model_v2" decal_diffuse="variantmeshes/_variantmodels/man/patterns/hellenic/round_gorgona_medusa_diffuse" decal_normal="VariantMeshes/_VariantModels/man/patterns/hellenic/decal_normal" /> – щит с рисунком. Тут вы видите меш самого щита, а так же дополнительные текстуры diffuse и normal, они накладываются как маска поверх основной текстуры щита и имеют префикс decal – или наклейка, картинка. Это позволяет не создавая новых текстур назначить любые гербы, царапины, вмятины и т.д, Таким образом применяя различные текстуры декалей мы можем добиться большого разнообразия щитов. На самом деле, ссылка идёт не сам файл текстуры, а на файл в котором перечислены эти текстуры. В файле находится несколько текстур с разными орнаментами, т.е установив decal_ текстуру, вы выбираете не одну а сразу столько её вариаций сколько прописано в файле decal_. Изображение шита мы видим на рисунке 5.
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/shield/hellenic_shield_hoplon_painted2. rigid_model_v2" decal_diffuse="VariantMeshes/_VariantModels/man/patterns/hellenic/decal_diffuse" decal_normal="VariantMeshes/_VariantModels/man/patterns/hellenic/decal_normal" imposter_model="VariantMeshes/_VariantModels/man/shield/hellenic_shield_hoplon. rigid_model_v2" mask0="1" mask1="0" /> – тоже щит с декалью, но у него есть отличия от предыдущего. Обратите внимание на параметр " mask0="1" mask1="0" этот параметр позволяет накладывать маску: подкраску по вертексам меша, что делает возможным внести цветовое многообразие в меши. . Цвета масок установлены для фракций т.е у каждой фракции есть 3 варианта масок, которые находятся в таблице: data_rome2.pack\db\faction_uniform_colours_tables\faction_uniform_colours, в которой первый столбик фракции и три варианты цвета, на каждый по три колонки - это цвета RGB. Еще один параметр на который стоит обратить внимание – imposter_model. Он используется для создания 2-D спрайтов моделей видимых на большом отдалении (вспоминаем первые сегун и медивал). Если спрайт блока не прописан, то эту часть юнита мы не увидим на отдалении. Потому важно прописывать их для одежды и щитов. Изображение шита мы видим на рисунке 6.
</SLOT>
</VARIANT_MESH>
</SLOT>
</VARIANT_MESH>

Imperial

И напоследок о создании одежды. Наш гоплит будет одет в тунику, поверх которой оденем линторакс (Рис.7).

Imperial

<VARIANT_MESH>
<SLOT name="tunics" >
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/tunics/hellenic_tunic_cut.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/tunics/e3_tunic.rigid_model_v2" >
<SLOT name="armour" >
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_01.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_02.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_03.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
</SLOT>
</VARIANT_MESH>

<VARIANT_MESH model="VariantMeshes/_VariantModels/man/tunics/hellenic_tunic_cut.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/tunics/e3_tunic.rigid_model_v2" mask0="2" mask2="0" >
<SLOT name="armour" >
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_01.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_02.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_03.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
</SLOT>
</VARIANT_MESH>
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/tunics/italian_tunic1_cut.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/tunics/e3_tunic.rigid_model_v2" >
<SLOT name="armour" >
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_01.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_02.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_03.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
</SLOT>
</VARIANT_MESH>
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/tunics/italian_tunic1_cut.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/tunics/e3_tunic.rigid_model_v2" >
<SLOT name="armour" >
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_01.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_02.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_03.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
</SLOT>
</VARIANT_MESH>
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/tunics/italian_tunic1_cut.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/tunics/e3_tunic.rigid_model_v2" mask1="2" mask2="1" >
<SLOT name="armour" >
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_01.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_02.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_03.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
</SLOT>
</VARIANT_MESH>
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/tunics/italian_tunic1_cut.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/tunics/e3_tunic.rigid_model_v2" mask1="2" mask2="1" >
<SLOT name="armour" >
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_01.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_02.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_03.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
</SLOT>
</VARIANT_MESH>
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/tunics/italian_tunic1_cut.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/tunics/e3_tunic.rigid_model_v2" mask0="1" mask1="0" >
<SLOT name="armour" >
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_01.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_02.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_03.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
</SLOT>
</VARIANT_MESH>
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/tunics/italian_tunic1_cut.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/tunics/e3_tunic.rigid_model_v2" mask0="2" mask2="0" >
<SLOT name="armour" >
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_01.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_02.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
<VARIANT_MESH model="VariantMeshes/_VariantModels/man/armour/linothorax_quilted_03.rigid_model_v2" imposter_model="VariantMeshes/_VariantModels/man/armour/carthaginian_linothorax_a. rigid_model_v2" />
</SLOT>
</VARIANT_MESH>
</SLOT>
</VARIANT_MESH>

Тут также повторяются все приемы, которые мы рассмотрели выше. Используя полученные навыки я думаю вы уже без труда разберетесь, как создавать различные модели для игры используя существующие меши и текстуры.
Счастливого вам творчества. И успехов в этом начинании.

Читать 1-ю часть статьи


Будем благодарны, если Вы поделитесь этой публикацией:


Copyright © «Империал». Копирование информации с этой страницы возможно только при указании прямых ссылок на эту страницу.

    Sakā, 24 Январь 2016, 10:11


    Imperial
    <VARIANT_MESH model="VariantMeshes/_VariantModels/man/shield/hellenic_shield_hoplon_painted2. rigid_model_v2" decal_diffuse="VariantMeshes/_VariantModels/man/patterns/hellenic/decal_diffuse" decal_normal="VariantMeshes/_VariantModels/man/patterns/hellenic/decal_normal" imposter_model="VariantMeshes/_VariantModels/man/shield/hellenic_shield_hoplon. rigid_model_v2" mask0="1" mask1="0" />
    Надо было хоть пример написать, как поменять цвет щиту. Ведь не понятно новичку куда и как писать надо.
    AllBaron, 23 Декабрь 2017, 12:29


    Imperial
    А с помощью какой программы можно просматривать модели?
    Воспользуйтесь одной из соц-сетей для входа на форум:
     РегистрацияУважаемый Гость, для скрытия рекламы, зарегистрируйтесь на форумеВход на форум 
    Сообщество ИмпериалБиблиотека Total War: Rome II (Rome 2: Total War) Моддинг Total War: Rome II (Rome 2 Total War) Создание моделей VariantMeshDefinitions. Часть 2.
    Письмо АдминуОбратная Связь
    © 2019 «Империал» · Условия использования · Ответственность · Визитка Сообщества · 20 Ноя 2019, 02:34 · Счётчики