This page has been translated automatically.
Видеоуроки
Интерфейс
Основы
Продвинутый уровень
Подсказки и советы
Основы
Программирование на C#
Рендеринг
Профессиональный уровень (SIM)
Принципы работы
Свойства (properties)
Компонентная Система
Рендер
Режимы вывода изображения
Физика
Браузер SDK 2
Лицензирование и типы лицензий
Дополнения (Add-Ons)
Демонстрационные проекты
API Samples
Редактор UnigineEditor
Обзор интерфейса
Работа с ассетами
Контроль версий
Настройки и предпочтения
Работа с проектами
Настройка параметров ноды
Setting Up Materials
Настройка свойств
Освещение
Sandworm
Использование инструментов редактора для конкретных задач
Расширение функционала редактора
Встроенные объекты
Ноды (Nodes)
Объекты (Objects)
Эффекты
Декали
Источники света
Geodetics
World-ноды
Звуковые объекты
Объекты поиска пути
Player-ноды
Программирование
Основы
Настройка среды разработки
Примеры использования
C++
C#
UnigineScript
Унифицированный язык шейдеров UUSL (Unified UNIGINE Shader Language)
Плагины
Форматы файлов
Материалы и шейдеры
Rebuilding the Engine Tools
Интерфейс пользователя (GUI)
Двойная точность координат
API
Animations-Related Classes
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
VR-Related Classes
Работа с контентом
Оптимизация контента
Материалы
Визуальный редактор материалов
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Учебные материалы
Внимание! Эта версия документация УСТАРЕЛА, поскольку относится к более ранней версии SDK! Пожалуйста, переключитесь на самую актуальную документацию для последней версии SDK.
Внимание! Эта версия документации описывает устаревшую версию SDK, которая больше не поддерживается! Пожалуйста, обновитесь до последней версии SDK.

Добавление вариаций для более реалистичного окружения

Randomizer - это инструмент UnigineEditor, предназначенный для добавления вариаций объектов сцены за несколько кликов.

Randomizer Interface

Инструмент Randomizer
Примечание
Чтобы открыть инструмент Randomizer, выберите Tools -> Randomizer в строке меню.
Чтобы узнать больше о работе с данным инструментом, посмотрите этот видеоурок.

Randomizer может выполнять следующие операции с нодами:

  • Заменить выбранные ноды другими нодами, выбранными случайным образом из указанного набора в соответствии с нормальным законом распределения.
  • Изменить положение, поворот и масштаб выбранных нод случайным образом в пределах диапазона в соответствии с нормальным законом распределения.
Примечание
Вы можете выполнять все операции вместе. Кроме того, вы можете выполнять рандомизацию сколько угодно раз: каждый раз вы будете получать разные результаты.

Настройки Randomizer#

Инструмент Randomizer предоставляет следующие настройки:

Offset Смещение выбранных нод, взятых случайным образом из указанного диапазона. Диапазон смещения указан для каждой оси.
  • From указывает минимальное смещение нод в единицах измерения.
  • To указывает максимальное смещение нод в единицах.
Вы можете указать как отрицательные, так и положительные значения.
Rotation Поворот выбранных нод на угол, произвольно взятый из заданного диапазона. Вращение выполняется относительно текущего направления оси. Диапазон углов указан для каждой оси.
  • From указывает минимальный угол, на который можно повернуть ноды.
  • To указывает максимальный угол, на который можно повернуть ноды.
Если одно из значений отрицательное, ноды будут вращаться вокруг оси в обоих направлениях (по часовой стрелке и против часовой стрелки).
Scale Масштаб выбранных нод, взятый случайным образом из указанного диапазона. Для каждой оси указан масштабный коэффициент.
Примечание
Если вы включите опцию Uniform Scale, вы можете указать коэффициент только один раз: ноды будут масштабироваться по всем осям.
  • From указывает минимальный масштабный коэффициент для нод.
  • To указывает максимальный коэффициент масштабирования для нод.
Чтобы уменьшить масштаб выбранных нод, укажите значения в диапазоне [0; 1) .
Place Nodes as NodeReference Включает и выключает добавление указанных нод как NodeReferences в сцену. Если опция отключена, замененные ноды изменят свои типы на типы заменяющих нод, хранящиеся в файлах .node.
Nodes Набор нод (.node) или / и сеток (.mesh), которые будут использоваться для случайной замены выбранных нод. Чтобы добавить новую ноду / сетку, щелкнитеили перетащите файл из Asset Browser. Появятся следующие поля:

  • В поле File Name отображается имя заменяющего файла.
  • Поле Probability позволяет указать вероятность появления ноды / сетки. В соответствии с этим значением частота появления ноды / сетки рассчитывается следующим образом: значение вероятности каждой ноды делится на сумму вероятностей, установленных для всех нод / сеток в наборе.

Замена нод#

Чтобы заменить ноды другими нодами, взятыми случайным образом из указанного набора, вам необходимо сделать следующее:

  1. Выберите ноды, которые следует заменить.
  2. Добавьте ноды, которые будут использоваться для случайной замены выбранных нод, одним из следующих способов:
    • В разделе Nodes нажмите, затем щелкнитев появившемся поле и выберите файл .node или .mesh в открывшемся диалоговом окне.
      Примечание
      Вы можете указать файл .node, хранящийся внутри контейнера ресурсов.
    • Выберите необходимые ноды в Asset Browser и перетащите их в раздел Nodes.
      Примечание
      Вы также можете перетащить файл .fbx, .dae, .obj или .3ds: файл .node, хранящийся внутри контейнера ресурсов, будет указан автоматически.
  3. Укажите вероятность появления ноды в поле справа.
  4. Включите параметр Place Nodes as NodeReference, если требуется.
  5. Щелкните Replace.

Рандомизация будет выполняться в соответствии с нормальным законом распределения.

Пример использования#

Например, у нас есть несколько одинаковых бочек:

Чтобы разнообразить виды бочек, нам нужно выполнить следующее:

  1. Выбрать все бочки в сцене.

  2. Добавьте файлы .node с различными типами бочек в раздел Nodes, перетащив их из Asset Browser.

  3. Укажите вероятности появления каждого типа бочек:
    • 10 для красных бочек
    • 5 для синих бочек
    • 2 для светло-коричневых бочек
    • 1 для коричневых бочек

    Согласно нашим установленным вероятностям, частота появления бочек каждого типа будет следующей:

    • 10/18 для красных бочек
    • 5/18 для синих бочек
    • 2/18 для светло-коричневых бочек
    • 1/18 для коричневых бочек
  4. Включите опцию Place Nodes as NodeReferences, чтобы указанные ноды добавлялись в сцену как NodeReferences. Это может быть полезно, если вы решите позже поменять бочки определенного типа. В этом случае вам нужно будет отредактировать только одну бочку: остальные тоже будут обновлены.
  5. Щелкните Replace. Выбранные ноды будут заменены ссылками на ноды из списка.

Преобразование нод#

Чтобы перемещать, вращать или масштабировать выбранные ноды случайным образом в указанном диапазоне, вам необходимо сделать следующее:

  1. Выберите ноды, которые необходимо преобразовать.
  2. Укажите диапазоны для значений Offset, Rotation и Scale.

  3. Щелкните Replace.

Рандомизация будет выполняться в соответствии с нормальным законом распределения.

Пример использования#

  1. Выбрать все бочки в сцене.

  2. Укажите диапазоны для параметров преобразования:
    • [30; 180] градус для вращения вокруг оси Z.
    • [0; 30] для смещения по осям X и Y.
    • [1; 3] для масштабирования по осям X, Y и Z.

  3. Щелкните Replace. Выбранные ноды будут преобразованы в соответствии с указанными значениями.

Видеоурок#

Чтобы узнать о добавлении вариаций объектов сцены, посмотрите следующее видео:

Последнее обновление: 16.08.2024
Build: ()