> For the complete documentation index, see [llms.txt](https://docs.bestway.com.ua/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.bestway.com.ua/gem-rts-v1-ru/modeli/plan-nastroiki-modelei-tekhniki.md).

# План настройки моделей техники

На примере настройки моделей танка/ПТ-САУ/САУ

Рекомендуется соблюдать предложенный порядок разработки и настройки модели. Это позволит своевременно выявлять ошибки и, в случае их обнаружения, избежать сложных переделок.\
Работу по созданию лодов, х- и хх-моделей рекомендуется выполнять после первичного тестирования основного функционала модели в игре.\
Анимации целесообразно добавлять на этапе, когда модель полностью готова.

{% stepper %}
{% step %}

## Подготовительная работа

* **Проверить габариты техники**\
  Убедиться, что общие размеры (длина, ширина, высота) и калибр орудия соответствуют оригиналу.
* **Проверить направление модели**\
  Лицевая сторона модели должна быть направлена по оси Х.
* **Назначить материалы**\
  Применить необходимые материалы на модель для визуализации объекта.
* **Создать базовую кость модели**\
  Создать кость `Basis` и в её `Object Properties` указать тип игровой сущности и путь экспорта модели в игру.\
  [Подробнее](/gem-rts-v1-ru/modeli/plan-nastroiki-modelei-tekhniki/sozdanie-ierarkhii-vspomogatelnykh-kostei-i-volyumov-modeli.md#bazovaya-kost-modeli)
  {% endstep %}

{% step %}

## Работа с мешем

* **Объединить/разделить меши**\
  Разделить или объединить меши на элементы (основные кости), задать им соответствующие названия и в `Object Properties` указать значение `poly`.\
  [Подробнее](/gem-rts-v1-ru/modeli/plan-nastroiki-modelei-tekhniki/sozdanie-ierarkhii-vspomogatelnykh-kostei-i-volyumov-modeli.md#vidimye-kosti-modeli-tekhniki)
* **Создать слои**\
  Создать иерархию слоев для работы с мешем, лодами (lod0-lod3), волюмами, траками, колесами, спецэффектами и дополнительными костями. Рекомендуется структурировать слои для удобства работы.
* **Добавить боксы для иммитации внутренностей**\
  Для мешей компонент техники, где возможно заглянуть внутрь модели (body, turret, engine и т.д.), добавить боксы закрывающие отверстия и назначить на них темные участки текстуры. Это создаст иллюзию наличия внутренностей в модели.
  {% endstep %}

{% step %}

## Работа с костями и иерархией

* **Выстроить иерархию**\
  Разместить элементы модели в соответствии с иерархией, прилинковав все ветки элементов к базовой кости модели (`basis`).\
  [Подробнее](/gem-rts-v1-ru/modeli/plan-nastroiki-modelei-tekhniki/sozdanie-ierarkhii-vspomogatelnykh-kostei-i-volyumov-modeli.md)
* **Задать значения параметров в свойствах \[Object Properties]**\
  Указать необходимые параметры для объектов (как мешей, так и дополнительных костей).
* **Настроить пивоты**\
  Проверить и при необходимости настроить пивоты для мешей, костей и костей подвески.\
  Проверить направление всех пивотов модели. Убедиться, что вращения таких объектов, как колеса, башня и ствол происходит по оси Z.
* **Добавить дополнительные кости:**

  * Кости для мест старта анимаций посадки (emit-ы);
  * Кости для пассажиров (seat-ы);
  * Кости для всех видимых членов экипажа и пулементчиков
  * Визоры;
  * Энумераторы;
  * Кости спецэффектов (FX);
  * Кости шасси и управления подвеской;
  * Другие кости, если необходимо.

  [Подробнее](/gem-rts-v1-ru/modeli/plan-nastroiki-modelei-tekhniki/sozdanie-ierarkhii-vspomogatelnykh-kostei-i-volyumov-modeli.md#vtorostepennye-kosti)
  {% endstep %}

{% step %}

## Работа с волюмами

* **Создать и настроить волюмы**\
  Создать и переименовать волюмы, прилинковать их к "родительским" объектам и прописать свойство `volume` в \[Object Properties].\
  [Подробнее](/gem-rts-v1-ru/modeli/plan-nastroiki-modelei-tekhniki/sozdanie-ierarkhii-vspomogatelnykh-kostei-i-volyumov-modeli.md#volyumy)
* **Проверить бронирование**\
  Убедиться, что полигонам волюмов назначены верные ID в свойствах блока `Polygon: Materials IDs`. Если волюм является полигидроном, то переназначить ID плоскостей для рассчета бронирования, согласно [установленному правилу](/gem-rts-v1-ru/modeli/plan-nastroiki-modelei-tekhniki/sozdanie-ierarkhii-vspomogatelnykh-kostei-i-volyumov-modeli.md#volyum-korpusa).
* **Описать волюмы в .def файле**\
  Если компонент имеет дополнительные волюмы (например, `body01_vol`, `body02_vol` и т.д.), то после первичного экспорта необходимо добавить их описание в .def файл модели.
  {% endstep %}

{% step %}

## Проверка основного функционала в игре

* **Провести первичный экспорт**\
  [Подробнее](/gem-rts-v1-ru/modeli/plan-nastroiki-modelei-tekhniki/eksport-v-igru-modeli-tekhniki.md)
* **Проверить .def файл модели**\
  Убедиться, что в .def файле прописаны все элементы, необходимые для проверки основного функционала модели в игре.
* **Проверить визуальное соответствие**\
  Убедиться, что в результате экспорта модели в игру конвертация исходных текстур в dds-текстуры прошла корректно. Модель в игре должна визуально соответствовать модели в рабочем окне 3ds Max
* **Проверить движение юнита и работу его подвижных частей**\
  Убедиться, что все основные компоненты модели работают корректно:

  * основное орудие стреляет и имеет правильные лимиты вращения;
  * пулеметы (если имеются) стреляют и имеют корректные лимиты вращения;
  * подвеска при движении ведет себя корректно, колеса и/или гусеницы вращаются и поворачивают в нужных направлениях;
  * экраны брони (если имеются) отлетают при повреждениях.

  [Подробнее](/gem-rts-v1-ru/modeli/plan-nastroiki-modelei-tekhniki/testirovanie-modeli-tekhniki.md)
  {% endstep %}

{% step %}

## Работа с лодами

**Создать лоды**

* Lod 1. Оставить \~75-80% исходных треугольников.
* Lod 2. Оставить \~50% исходных треугольников.
* Lod 3. Оставить \~30-35% исходных треугольников.

[Подробнее](/gem-rts-v1-ru/modeli/plan-nastroiki-modelei-tekhniki/urovni-detalizacii-lody.md)
{% endstep %}

{% step %}

## Работа с текстурами

* **Назначить материалы**\
  Назначить материал на модель и применить соответствующие текстуры.
* **Проверить назначение материала с поддержкой альфа-канала**\
  Создать отдельный материал с поддержкой альфа-канала и назначить его только на полигоны, на которых присутствуют прозрачные элементы.\
  Это необходимо для оптимизации рендера объектов, содержащих прозрачные элементы.

<figure><img src="https://2052154247-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fx2fkAZ6oKGGdByFhKPpa%2Fuploads%2FU1keZz8oG92OoXTlRvVy%2F%D0%A1%D0%BD%D0%B8%D0%BC%D0%BE%D0%BA%20%D1%8D%D0%BA%D1%80%D0%B0%D0%BD%D0%B0%202024-08-23%20%D0%B2%2011.20.17.png?alt=media&amp;token=1a54f6cc-4372-42e4-af7b-a7416b219c2c" alt="" width="563"><figcaption><p>Иллюстрация назначения материла с поддержкой альфы</p></figcaption></figure>

* **Проверить швы и стыки**\
  Убедиться, что текстура не исказилась в местах резки, сшивания и смещения. Если необходимо, переназначить через раскладку (Unwrap UVW).
* **Очистить тени**\
  Проверить, что в местах удаления объектов на текстурах для Х- и ХХ- моделей отсутствуют тени.

  [Подробнее](/gem-rts-v1-ru/modeli/plan-nastroiki-modelei-tekhniki/naznachenie-materialov-na-model.md)
  {% endstep %}

{% step %}

## Создание Х-модели

* **Изменить путь экспорта**\
  В свойствах кости `Basis` изменить путь экспорта модели в папку с Х-моделями.
* **Создать текстуры для Х-модели**\
  На текстурах должны быть элементы нанесенного ущерба (пятна ржавчины, следы гари и копоти, места выгоревшей краски, разбитые стекла и т.п.).
* **Проработать меш Х-модели**\
  Удалить ненужные элементы модели, сделать вмятины, пробития и места поломок.
* **Проработать лоды Х-модели**\
  Выполнить те же действия для всех лодов (либо одновременно для всех).
* **Проработать сбитые гусеницы**\
  Для моделей с гусеницами проработать меш сбитых гусениц.
* **Очистить тени на Х-модели**\
  Удалить тени в местах удаления объектов на текстуре Х-модели.
* **Проверить разрушаемость компонентов:**

  * разрушить компонент с помощью консольной команды\
    `g_component break “название компонента”`;
  * проверить ремонт компонента командой\
    `g_component restore “название компонента”`;
  * выстрелить по юниту из танка двумя типами снарядов;
  * выстрелить по юниту из противотанкового орудия (например, Bazooker);
  * кинуть в юнит противотанковую гранату.

  [Подробнее](/gem-rts-v1-ru/modeli/plan-nastroiki-modelei-tekhniki/kh-model-tekhniki.md)
  {% endstep %}

{% step %}

## Создание ХХ-модели

* **Изменить путь экспорта**\
  В свойствах кости `Basis` изменить путь экспорта модели в папку с ХХ-моделями.
* **Удалить хелперы**\
  Удалить ненужные хелперы.
* **Переназначить диффузную текстуру**\
  Использовать Multiply-материал для диффузной текстуры.\
  Для моделей, использующих PBR-материалы используется схема `pbr/standart_dirt`, иначе `gem2/bump_specular_lightmap`
* **Перенести раскладку**\
  [Перенести раскладку во второй канал под лайтмап](#user-content-fn-1)[^1]у для всех элементов и лодов.

<figure><img src="https://2052154247-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fx2fkAZ6oKGGdByFhKPpa%2Fuploads%2FYVMr617TOexRSQl9grNO%2Fpipeline%20-%20change%20layer.png?alt=media&amp;token=a06a4012-e423-4990-a8af-77539f66331b" alt="" width="563"><figcaption><p>Иллюстрация переноса раскладки во второй канал</p></figcaption></figure>

* **Проработать меш ХХ-модели**\
  Удалить ненужные элементы, включая меш резины для моделей колесной техники.
* **Проработать лоды**\
  Выполнить те же действия для всех лодов.
* **Создать part’ы и волюмы**\
  Создать и настроить part’ы и волюмы для них в ХХ-модели.
* **Проверить уничтожаемость компонентов:**

  * разрушить компонент с помощью консольной команды:\
    `g_component destroy “название компонента”`;
  * запустить эффект взрыва командой `g_effect “explosion”`;
  * выстрелить по юниту из танка двумя типами снарядов;
  * выстрелить по юниту из противотанкового орудия (например, Bazooker);
  * кинуть в юнит противотанковую гранату;
  * проверить, что кости `part` отлетают при взрыве.

  [Подробнее](/gem-rts-v1-ru/modeli/plan-nastroiki-modelei-tekhniki/khkh-model-modeli-tekhniki.md)
  {% endstep %}

{% step %}

## Настройка .def файла

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

* **Добавить базовые props**\
  Добавить `props`, соответствующие типу и функционалу модели.
* **Описать дополнительные волюмы**\
  Описать все дополнительные волюмы
* **Описать кости для анимаций посадки юнитов в технику (emit) и кости экипажа**\
  Описать эмиты и кости посадки экипажа в **.def** файле.\
  \*Если в **.def** указан дополнительный файл **crew\.ext**, то описания вносятся в него.
* **Добавить анимации и позы экипажа**\
  Прописать корректные анимации и позы экипажа.
* **Описать дополнительное оборудование**\
  Если предусмотрено, описать дополнительное оборудование, например, мешевые пулеметы или пулеметы, встраиваемые вспомогательными костями.
* **Указать физические свойства**\
  Указать физические свойства модели (масса, скорость, объем топливного бака и т.п.).

[Подробнее](/gem-rts-v1-ru/modeli/plan-nastroiki-modelei-tekhniki/bazovaya-nastroika-def-faila.md)
{% endstep %}

{% step %}

## Анимация

* **Настроить гусеницы**\
  Применить и настроить модификатор `Skin` для всех гусениц.
* **Создать базовые анимации**:
  * `start/stop`;
  * `hit`;
  * `fire`;
  * `fire_mgun`;
  * анимации открывания/закрывания дверей и люков при посадке/высадке экипажа;
  * прочие анимации, если необходимо.
    {% endstep %}
    {% endstepper %}

[^1]: Перенос раскладка делается таким образом:\
    1\. Выделяются объекты\
    2\. Назначается модификатор Unwrap UVW\
    3\. В окне Channel заменить значение канала с 1 на 2.\
    4\. В появившемся окне выбрать кнопку Move для переноса информации с 1 канала во 2.

    \
    \\
