This page has been translated automatically.
Видеоуроки
Interface
Essentials
Advanced
Подсказки и советы
Основы
Программирование на C#
Рендеринг
Professional (SIM)
Принципы работы
Свойства (properties)
Компонентная Система
Рендер
Физика
Редактор UnigineEditor
Обзор интерфейса
Работа с ассетами
Настройки и предпочтения
Работа с проектами
Настройка параметров ноды
Setting Up Materials
Настройка свойств
Освещение
Landscape Tool
Использование инструментов редактора для конкретных задач
Расширение функционала редактора
Встроенные объекты
Ноды (Nodes)
Объекты (Objects)
Эффекты
Декали
Источники света
Geodetics
World Nodes
Звуковые объекты
Объекты поиска пути
Players
Программирование
Основы
Настройка среды разработки
Примеры использования
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Плагины
Форматы файлов
Materials and Shaders
Rebuilding the Engine Tools
GUI
Двойная точность координат
API
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
Работа с контентом
Оптимизация контента
Материалы
Визуальный редактор материалов
Сэмплы материалов
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials
Внимание! Эта версия документация УСТАРЕЛА, поскольку относится к более ранней версии SDK! Пожалуйста, переключитесь на самую актуальную документацию для последней версии SDK.
Внимание! Эта версия документации описывает устаревшую версию SDK, которая больше не поддерживается! Пожалуйста, обновитесь до последней версии SDK.

Генерация точечных объектов

Внимание
Функционал, описанный в этой статье, недоступен в Community редакции SDK.
Чтобы использовать этот функционал вам необходимо получить лицензию на Engineering / Sim SDK.

Houses, landmarks, and other such objects are placed at specific points of the terrain. Two shape types can be selected from vector data sources (*.shp and *.geojson assets) and used for point object placement:Дома, достопримечательности и другие подобные объекты размещаются в определенных точках местности. Существует 2 типа форм, которые можно выбрать из источников векторных данных (*.shp и *.geojson ассеты) и использовать для размещения точечных объектов:

  • Point — the primary object is placed at the position specified by the point and oriented the same way as when saved to a *.node file.Point - в этом случае базовый объект будет размещен в позиции, указанной точкой, и будет ориентирован так же, как при сохранении в файл *.node.
  • Line — the primary object is placed at the position specified by the first point, while the second point determines the orientation of the object's forward direction vector (positive Y).Line - в этом случае базовый объект будет размещен в позиции, указанной первой точкой, а вторая точка определяет ориентацию вектора направления объекта "вперед" (положительное значение Y).

This chapter describes the general workflow for the generation of point objects on the terrain.В этой главе описывается основной алгоритм создания точечных объектов на местности.

Примечание
The article assumes that you have already added the data required for the terrain surface.Предполагается, что вы уже добавили данные, необходимые для поверхность местности .

1. Подготовка базового объекта.#

Create a primary object that will be used as a building block for the generation — any *.node file containing a single root node with any hierarchy.Создайте базовый объект, который будет использоваться в качестве строительного блока для генерации - любой файл *.node, содержащий единственную корневую ноду с любой иерархией.

Примечание
The primary object must be located and have a pivot at the origin (0, 0, 0).Базовый объект должен быть расположен и иметь точку поворота в начале координат (0, 0, 0).

Export your node to a .node file.Экспортируйте свою ноду в файл .node .

2. Adding a Vector Data Source2. Добавление источника векторных данных#

Currently, Sandworm allows using only offline vector data sources for the generation.В настоящее время Sandworm позволяет использовать для генерации только офлайн-источник векторных данных.

  1. In the Sources panel, add a new vector data layer.На панели Sources добавьте новый слой векторных данных.

    • Clicking on Vector opens the window for adding Slots. Slots are designed to organize data.При нажатии Vector открывается окно для добавления слотов. Слоты предназначены для организации данных в различные маски ландшафта.

      Slots

    • Clicking on + Add Layer provides the toolset for uploading vector data.При нажатии + Add Layer открывается функционал для загрузки данных о деталях ландшафта.
  2. In the Parameters panel, define the type of Data Source to be used: Assets or External Files. Currently, only *.shp and *.geojson are supported as assets. Therefore, if you have other types of files, you can try to add them as External Files.На панели Parameters определите тип источника данных которые будут использоваться: Assets или External Files. В настоящее время в качестве ресурсов поддерживаются только *.shp и *.geojson. Поэтому, если у вас есть другие типы файлов, вы можете попробовать добавить их как External Files.

    Click Import.Щелкните Import.

  3. In the window that opens, select the set of files to be used as vector data.В открывшемся окне выберите набор файлов, которые будут использоваться в качестве векторных данных.

When the vector data is added, its image is displayed atop all the layers in the Preview panel (you may change the order of layers display by RMB click on a layer in the list of sources), and the Vector layer parameters become available.При добавлении векторных данных их изображение отображается поверх всех слоев в панели предварительного просмотра (порядок отображения слоев может быть изменен), и становятся доступными параметры векторного слоя.

3. Specifying Filters for Point Objects3. Создание фильтров для точечных объектов#

The Filter is a set of rules used to pick the specific data from the list of all available vector data. The rules are created using the Attributes — only the objects that fit the requirements of every Attribute are generated based on othis Filter. Filter - это набор правил, используемых для выбора конкретных данных из списка всех доступных векторных данных. Правила создаются с использованием атрибутов (Attributes). На основе этого фильтра создаются только те объекты, которые соответствуют требованиям каждого атрибута.

Filters are created as follows:Фильтры создаются следующим образом:

  1. Click the Add button in the Filters window of the Parameters panel.Нажмите кнопку Add в окне Filters панели Parameters.

    Double-click on the Filter to specify a Filter name. To remove a Filter, use the Remove button. You can add as many Filters as necessary.Дважды щелкните по фильтру, чтобы указать его имя. Для удаления фильтра используйте кнопку Remove. Вы можете добавить столько фильтров, сколько необходимо.

    The Share button allows shared use of the Filter among vector data layers. Select the vector data layer that will share this Filter in the pop-up window. Changes in a shared Filter will be applied to it in all vector data layers.Кнопка Share позволяет совместное использование фильтра между слоями векторных данных. Выберите слой векторных данных, который будет использовать совместно этот фильтр, во всплывающем окне. Изменения в совместно используемом фильтре применяются к нему во всех слоях векторных данных.

  2. Выберите слот из созданных вами (Sources -> Vector). Слоты предусмотрены для того, чтобы организовать данные в различные маски ландшафта.
  3. For each Filter, set an Attribute (or Attributes) to filter certain data from the vector source. The required data is filtered using the Attribute values and a suitable operator. Autocomplete is available — you can type in Attribute names and values.Для каждого фильтра установите атрибут (или атрибуты) для фильтрации определенных данных из векторного источника. Требуемые данные фильтруются с использованием значения атрибута и подходящего оператора. Доступно автозаполнение. Вы можете ввести имена и значения атрибутов или выбрать их из списка атрибутов.

    The available operators are: =, !=, >, <, ANY. ANY generates all the objects that have any value assigned for the selected Attribute.Доступные операторы: =, !=, >, <, ANY. ANY генерирует все объекты, которым присвоено любое значение для выбранного атрибута.

    You can also select Attribute values from the Attributes table. The table opens using the sign on the right of the Attribute expression.Вы также можете выбрать значения атрибутов из таблицы. Таблица открывается значком справа от выражения атрибута.

    Double-clicking on a value in the table adds it to the Attribute value field.Двойное нажатие на значении в таблице добавляет его в поле значения атрибута.

  4. To add more Attributes, use the "+" (plus) button. You can add as many Attributes for one Filter as necessary. It is possible to set AND and OR relations between the Attributes in the Filter.Чтобы добавить дополнительные атрибуты, используйте кнопку «+» (плюс). Вы можете добавить столько атрибутов для одного фильтра, сколько необходимо. Можно установить отношения AND и OR между атрибутами фильтра.

    To remove an Attribute, use the button to the right of the Attribute expression.Чтобы удалить фильтр, используйте кнопку справа от выражения атрибута.

4. Specifying Parameters of Point Objects4. Задание параметров точечных объектов.#

In this step, we set objects that will be generated and placed across the terrain's surface according to the data filtered by the Filter.На этом этапе мы собираемся установить объекты, которые будут сгенерированы и размещены на поверхности ландшафта в соответствии с данными, отфильтрованными с помощью тегов.

  1. On the Sources panel, click + Add Object.На панели Sources нажмите + Add Object.

  2. In the drop-down, select the type of object you will generate according to the Slot data. In our case, it is Points. Click Import.В выпадающем списке выберите тип объекта, который вы собираетесь генерировать в соответствии с данными слота. В нашем случае это Points. Нажмите Import.

Set the following object parameters:Задайте следующие параметры объекта:

Slot Слот, созданный вами для организации фильтров.
Enabled При включении будут создаваться объекты этого типа. Когда этот параметр выключен, объекты этого типа не генерируются и не будут существовать в мире, содержащем сгенерированный ландшафт.
Node The path to the primary object's *.node file.Путь к *.node файлу, содержащему основной объект.
Use as Fence Option for lengthy objects such as fences and pipes. When creating point objects, this option should be disabled.Вариант для длинных объектов, таких как заборы и трубы. При создании точечных объектов эта опция должна быть выключена.
Collider

Flag indicating if collisions for the generated object are to be detected.Флаг, указывающий, должны ли обнаруживаться коллизии для сгенерированного объекта.

Примечание
Available only for geometry type.Доступно только для геометрического типа.
Drop To Ground Flag indicating if the generated object will be aligned with the terrain surface.Флаг, указывающий, будет ли сгенерированный объект выровнен с поверхностью ландшафта.
Height Offset (m)

Distance from the terrain surface along the Z-axis, in meters.Расстояние от поверхности местности по оси Z в метрах.

Примечание
If you see the generated object partially, You can try to increase this value to lift it above the terrain surface.Если вы видите сгенерированный объект частично, вы можете попробовать увеличить это значение, чтобы поднять его над поверхностью ландшафта.
Bake To Cluster If enabled, bakes generated point objects to Mesh Cluster. If disabled, generated objects are added to the world hierarchy as NodeReferences.Если включено, то сгенерированные точечные объекты запекаются в Mesh Cluster. Если отключено, сгенерированные объекты добавляются в мировую иерархию как NodeReferences.
Forward Axis Axis which determines the orientation of the primary object: X, -X, Y, -Y.Ось, определяющая ориентацию базового объекта: X, -X, Y, -Y.
Split Billboards Length (km)

This parameter is required if your primary object is a billboard, to control the number of Billboards objects to be generated due to area splitting:Этот параметр необходим, если у вас основной объект - это билборд, позволяющий контролировать количество объектов Billboard, которые должны быть сгенерированы из-за разделения области:

  • Low values will increase the number of generated Billboards objects.Низкие значения увеличивают количество сгенерированных объектов Billboards.
  • High values will reduce this number.Высокие значения уменьшат это число.
Примечание
The maximum number of billboards contained in a single Billboards object is limited to 8000. Thus, the number of generated Billboards objects is also affected by the total number of points, where the Billboards are to be placed. Although Billboards are performance-friendly, generating too many of them may reduce performance.Максимальное количество билбордов, содержащихся в одном объекте Billboards, ограничено 8000. Таким образом, на количество сгенерированных объектов Billboards также влияет общее количество точек, в которые должны быть помещены Billboards. Хотя Billboards удобны для производительности, создание слишком большого количества из них может снизить производительность.

If you introduce any changes to created objects, click Apply to update them immediately.Если вы вносите какие-либо изменения в созданные объекты, щелкните Apply, чтобы обновить их немедленно.

5. Generating Point Objects5. Генерация точечных объектов#

Now you need to configure the output settings and generate (or regenerate) the terrain which contains these vector objects by clicking the Generate button.Теперь нужно установить выходные настройки, а затем сгенерировать (или перегенерировать) ландшафт, содержащий эти векторные объекты, нажав кнопку Generate.

Here is a terrain fragment with houses generated based on vector data using the primary mesh object:Вот фрагмент ландшафта с домами, сгенерированный на основе векторных данных с использованием базового объекта сетки.

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