Использование MultiMeshInstance

Введение

В обычном сценарии вы используете узел MeshInstance для отображения 3D-сетки, например, модели человека для главного героя, но в некоторых случаях вы хотите создать несколько экземпляров одной и той же сетки в сцене. Вы можете дублировать один и тот же узел несколько раз и настраивать трансформации вручную. Это может быть утомительным процессом, а результат может выглядеть механическим. Кроме того, этот метод не способствует быстрым итерациям. MultiMeshInstance является одним из возможных решений этой проблемы.

MultiMeshInstance, как следует из названия, создает несколько копий MeshInstance на поверхности определённой сетки. Примером может служить сетка деревьев, заполняющая сетку ландшафта деревьями произвольного масштаба и ориентации.

Настройка узлов

Для базовой установки требуется три узла: узел MultiMeshInstance и два узла MeshInstance.

Один узел используется в качестве цели - сетки, на которую нужно поместить несколько сеток. В примере с деревом это будет ландшафт.

Другой узел используется в качестве источника - сетки, которую вы хотите продублировать. В случае с деревом это будет само дерево.

В нашем примере мы используем узел Spatial в качестве корневого узла сцены. Дерево сцены будет выглядеть следующим образом:

../../_images/multimesh_scene_tree.png

Примечание

Для простоты в этом учебнике используются встроенные примитивы.

Теперь у вас всё готово. Выберите узел MultiMeshInstance и посмотрите на панель инструментов, вы должны увидеть дополнительную кнопку MultiMesh рядом с View. Нажмите на неё и выберите в выпадающем меню Populate surface . Появится новое окно с названием Populate MultiMesh.

../../_images/multimesh_toolbar.png ../../_images/multimesh_settings.png

Настройки MultiMesh

Ниже приведены описания вариантов.

Целевая поверхность

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

Source Mesh (исходная сетка)

Сетка, которую нужно продублировать на целевой поверхности.

Ось сетки вверх

Ось, используемая в качестве оси вверх исходной сетки.

Random Rotation (случайное вращение)

Случайные вращения вокруг оси вверх исходной сетки.

Random Tilt (случайный наклон)

Случайность общего вращения исходной сетки.

Random Scale (случайный масштаб)

Случайность масштаба исходной сетки.

Масштаб

Масштаб исходной сетки, которая будет размещена над целевой поверхностью.

Количество

Количество экземпляров сетки, размещённых на целевой поверхности.

Выберите целевую поверхность. В случае с деревом это должен быть узел ландшафта (landscape). Исходной сеткой должен быть узел дерева (tree). Настройте остальные параметры в соответствии с вашими предпочтениями. Нажмите Populate и несколько копий исходной сетки будут размещены поверх целевой сетки. Если вы удовлетворены результатом, вы можете удалить экземпляр сетки, использованный в качестве исходной сетки.

Конечный результат должен выглядеть так:

../../_images/multimesh_result.png

Чтобы изменить результат, повторите предыдущие шаги с другими параметрами.