Добавление вариаций для более реалистичного окружения
Randomizer - это инструмент UnigineEditor, предназначенный для добавления вариаций объектов сцены за несколько кликов.
Randomizer может выполнять следующие операции с узлами:
- Заменить выбранные узлы другими узлами, выбранными случайным образом из указанного набора в соответствии с нормальным законом распределения.
- Изменить положение, поворот и масштаб выбранных узлов случайным образом в пределах диапазона в соответствии с нормальным законом распределения.
Настройки рандомизатора#
Инструмент Randomizer предоставляет следующие настройки:
Offset | Смещение выбранных узлов, взятых случайным образом из указанного диапазона. Диапазон смещения указан для каждой оси.
|
---|---|
Rotation | Поворот выбранных узлов на угол, произвольно взятый из заданного диапазона. Вращение выполняется относительно текущего направления оси. Диапазон углов указан для каждой оси.
|
Scale | Масштаб выбранных узлов, взятый случайным образом из указанного диапазона. Для каждой оси указан масштабный коэффициент.
Если вы включите опцию Uniform Scale, вы можете указать коэффициент только один раз: узлы будут масштабироваться по всем осям.
|
Place Nodes as NodeReference | Включает и выключает добавление указанных узлов как NodeReferences в сцену. Если опция отключена, замененные узлы изменят свои типы на типы заменяющих узлов, хранящиеся в файлах .node. |
Nodes | Набор узлов (.node) или / и сеток (.mesh), которые будут использоваться для случайной замены выбранных узлов. Чтобы добавить новый узел / сетку, щелкнитеили перетащите файл из Asset Browser. Появятся следующие поля:
|
Замена узлов#
Чтобы заменить узлы другими узлами, взятыми случайным образом из указанного набора, вам необходимо сделать следующее:
- Выберите узлы, которые следует заменить.
- Добавьте узлы, которые будут использоваться для случайной замены выбранных узлов, одним из следующих способов:
- В разделе Nodes нажмите, затем щелкнитев появившемся поле и выберите файл .node или .mesh в открывшемся диалоговом окне.
Вы можете указать файл .node, хранящийся внутри контейнера ресурсов.
- Выберите необходимые узлы в Asset Browser и перетащите их в раздел Nodes.
Вы также можете перетащить файл .fbx, .dae, .obj или .3ds: файл .node, хранящийся внутри контейнера ресурсов, будет указан автоматически.
- В разделе Nodes нажмите, затем щелкнитев появившемся поле и выберите файл .node или .mesh в открывшемся диалоговом окне.
- Укажите вероятность появления узла в поле справа.
- Включите параметр Place Nodes as NodeReference, если требуется.
- Щелкните Replace.
Рандомизация будет выполняться в соответствии с нормальным законом распределения.
Пример использования#
Например, у нас есть несколько одинаковых стволов:
Чтобы разнообразить виды бочек, нам нужно выполнить следующее:
- Выбрать все стволы в сцене.
- Добавьте файлы .node с различными типами стволов в раздел Nodes, перетащив их из браузера активов.
- Укажите вероятности появления каждого типа стволов:
- 10 для красных бочек
- 5 для синих бочек
- 2 для светло-коричневых бочек
- 1 для коричневых бочек
Согласно нашим установленным вероятностям, частота появления бочек каждого типа будет следующей:
- 10/18 для красных бочек
- 5/18 для синих бочек
- 2/18 для светло-коричневых бочек
- 1/18 для коричневых бочек
- Включите опцию Place Nodes as NodeReferences, чтобы указанные узлы добавлялись в сцену как NodeReferences. Это может быть полезно, если вы решите позже поменять стволы определенного типа. В этом случае вам нужно будет отредактировать только один ствол: остальные тоже будут обновлены.
- Щелкните Replace. Выбранные узлы будут заменены ссылками на узлы из списка.
Преобразование узлов#
Чтобы перемещать, вращать или масштабировать выбранные узлы случайным образом в указанном диапазоне, вам необходимо сделать следующее:
- Выберите узлы, которые необходимо преобразовать.
- Укажите диапазоны для значений Offset, Rotation и Scale.
- Щелкните Replace.
Рандомизация будет выполняться в соответствии с нормальным законом распределения.
Пример использования#
- Выбрать все стволы в сцене.
- Укажите диапазоны для параметров преобразования:
- [30; 180] градус для вращения вокруг оси Z.
- [0; 30] для смещения по осям X и Y.
- [1; 3] для масштабирования по осям X, Y и Z.
- Щелкните Replace. Выбранные узлы будут преобразованы в соответствии с указанными значениями.