Разрушаемые элементы

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

This page either contains information that is only partially or incorrectly translated, or there isn't a translation yet.
If this page cannot be translated for some reason, or is left untranslated for an extended period of time after this notice is posted, the page should be requested to be deleted.
Also, please make sure the article tries to comply with the alternate languages guide.

Создание физического объекта
Начнем с создания простого физического объекта в виде коробки из примитивов.
Этот урок использует примитивные формы для рендеринга и физики, но вместо них можно напрямую использовать файлы моделей (.fbx, .dmx). Фильтры импорта позволяют создать единый FBX-файл, содержащий множество частей модели, которые затем можно использовать как отдельные разрушаемые части.
- Добавьте узлы RenderPrimitiveBox и PhysicsShapeBox с координатами (0,0,8) и размерами (16,16,16).
- Примените к физической коробке свойство поверхности ‘prop.wood_box’.
- Добавьте узел prop_data, чтобы указать, что эта модель предназначена для использования как физический объект.
- Теперь используйте предпросмотр в ModelDoc, чтобы убедиться, что модель можно создать как prop_physics и перемещать в игре.
Добавление разрушаемого элемента
- Сначала отредактируйте prop_data, указав уровень прочности (health) — это позволит объекту получать урон и разрушаться при наличии разрушаемых частей:
- Добавьте узел BreakPieceEmbedded — он содержит всё необходимое для разрушаемого элемента без необходимости создавать его как отдельную модель.
- Внутри BreakPieceEmbedded добавьте RenderPrimitiveBox и PhysicsShapeBox с координатами (0,4,8) и размерами (15,7,15). Это можно сделать копированием созданных ранее коробок.
- Для наглядности назначьте RenderPrimitiveBox материал primary_red.vmat, чтобы разрушение было хорошо заметно.
Каждый узел BreakPieceEmbedded фактически является небольшим встроенным под-документом, который может содержать большинство узлов. (Примечание: из-за ограничений редактора может появляться предупреждение о некоторых узлах, но в большинстве случаев они работают нормально.) При компиляции родительской модели каждый BreakPieceEmbedded извлекается и компилируется в отдельный vmdl_c, который затем используется в информации о разрушении родительской модели.
Добавление второго разрушаемого элемента
Разрушение выглядит не так интересно, если объект ломается на одну часть. Щелкните правой кнопкой мыши по BreakPiece, выберите “Duplicate” и измените координаты новых коробок на (0,-4,8).
Мы сделали разрушаемые части немного меньше оригинальной коробки, чтобы избежать их наложения при спавне. Физический движок устойчив к пересечениям объектов, но лучше их избегать!
Тестирование разрушаемого объекта
Используйте предпросмотр в игре, создайте prop_physics и проверьте, что он получает урон и разрушается при стрельбе. Поздравляем! Вы создали свою первую разрушаемую модель!