Interface Overview
Assets Workflow
Settings and Preferences
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Using Editor Tools for Specific Tasks
Setting Up Development Environment
Usage Examples
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine and Tools
Double Precision Coordinates
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
CIGI Client Plugin
Rendering-Related Classes

Generating Point Objects

Houses, landmarks and other such objects are placed at certain points of the terrain. There are 2 shape types that can be selected from vector data sources (*.shp files) and used for point object placement:

  • Point - in this case the basic object will be placed at the position specified by the point and will be oriented the same way as when it was saved to a *.node file.
  • Line - in this case the basic object will be placed at the position specified by the first point, while the second point determines orientation of object's forward direction vector (positive Y).
The basic workflow is as follows:

1. Preparing a Basic Object

First, we create a basic object, that will be used as a building block for generation - any *.node file containing a single root-node with any hierarchy.

The basic object must be located and have a pivot at the origin (0, 0, 0).

2. Adding a Vector Data Source and Specifying Tags

3. Specifying Parameters of Point Objects

Now, we must add basic objects created at the first step and bind them to the tags created at the second step.

  1. On the Sources panel, select the Vector data source type and the following settings will be displayed in the Points tab of the Parameters panel.

  2. Add a basic object for generation by clicking Add button at the top of the Parameters panel and specify object's name. You can add as many objects as nesessary.

  3. For each basic object specify the following parameters:

    Vector tag The tag to be used for the selected basic object from the list of the tags specified at the second step.
    Node The path to the basic object's *.node file.
    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.
    Bake to cluster Flag indicating if the generated objects will be baked to a MeshCluster.
    The option is available only when the specified *.node file contains a static mesh.
    Baking to a MeshCluster shouldn't be used for large areas because of the coordinates precision limitations.
    Height offset Distance from the terrain surface along the Z-axis, in units.
    If you see the generated object partially, You can try to increase this value to lift it above the terrain surface.
    Forward axis Axis which determines orientation of the basic object: X, -X, Y, -Y.
  4. Check the basic objects you added at the previous step to be generated.
    If you are going to update some of the existing point objects, check only the changed ones. At that, the other objects will remain the same after terrain generation.
  5. Now all necessary basic objects are specified and bound to tags.


    If the terrain is already generated and you want to add only vector objects - proceed to Step 4.

    Otherwise - return back to setting other parameters of terrain generation.

4. Generating Point Objects

Now you can generate vector objects by clicking Generate button and selecting Vector objects option in the Steps window, in this case only vector objects will be generated.

Here is a terrain fragment with houses generated on the basis of vector data using the basic mesh object we created.

By default, the generated houses are added to the world hierarchy as NodeReferences. However, it can be baked to a MeshCluster.

Point Objects as NodeReferences
Point Objects as MeshCluster

To regenerate some of the existing point objects, check only those objects that should be updated, click Generate and select Vector objects option. Only the specified point objects will be regenerated. At that, the other ones (that haven't been checked) will remain the same.

If you are going to regenerate only point objects, the other vector objects (spline, vector and ) must be unchecked.

Placing Billboards

You can also splace billboards at certain points of the terrain.

This option can be used, for example, to simulate aircraft warning lights that are attached to tall structures and used as collision avoidance measures. The basic workflow is the same as described above with the following additions:

  • At Step 1 you should use a *.node file containing a single Billboards object as the basic object. The Billboards object should contain a single billboard and have an emissive material assigned to its surface.
    If a *.node file contains several billboards, only the settings of the first one will be used.
  • Step 2 can be skipped, as you can use the same tag as for buildings or structures, on the top of which the aircraft warning lights are to be placed.
  • At Step 3 when specifying parameters you should do the following:

    In the Tag field you should select the same tag as the one you used for buildings or structures, on the top of which the aircraft warning lights are to be placed.

    You will have an extra parameter available - Split Billboards length (km). This parameter allows you to control the number of Billboards objects that will be generated due to area splitting:

    • low values will increase the number of generated Billboards objects
    • 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 preformance.

Last update: 2018-04-26