This page has been translated automatically.
Video Tutorials
Interface
Essentials
Advanced
How To
Rendering
Professional (SIM)
UnigineEditor
Interface Overview
Assets Workflow
Version Control
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Lighting
Sandworm
Using Editor Tools for Specific Tasks
Extending Editor Functionality
Built-in Node Types
Nodes
Objects
Effects
Decals
Light Sources
Geodetics
World Nodes
Sound Objects
Pathfinding Objects
Players
Programming
Fundamentals
Setting Up Development Environment
Usage Examples
C++
C#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Plugins
File Formats
Materials and Shaders
Rebuilding the Engine Tools
GUI
VR Development
Double Precision Coordinates
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
Content Creation
Content Optimization
Materials
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials

IG Host

Warning
The functionality described in this article is not available in the Community SDK edition.
You should upgrade to Sim SDK edition to use it.
Warning
This tool is experimental, some settings and parameters are still under development.

In the simulation industry, an image generator (IG) receives data from a host via an interface (such as CIGI). For demonstration of IG features and debugging purposes, we started developing IG Host — a cross-platform and cross-protocol solution. Currently, IG Host is a simplified version of CIGI HEMU and includes a number of useful advantages:

  • Simplified entity control
  • Transparent packet transfer (requests and responses can be viewed in the console)
  • CIGI Debug mode
  • Improved LOS responses

It is planned to add the HLA and DIS protocols in next versions.

Running IG Host#

IG Host is a part of CIGI demo. Therefore, to try out IG Host, you need to download and run CIGI demo. In the IG Configurator window, click the RunIG Host button.

Then click Connect.

Using IG Host in IG Projects#

To run IG Host with your IG application, copy the ig_host binaries from the demos/cigi_demo/bin/ folder to your project:

  • For Windows — ig_host_x64.pdb, ig_host_x64.exe, ig_host_x64d.exe
  • For Linux — ig_host_x64, ig_host_x64d

IG Host Settings and Parameters#

To make things work, you need to perform the following actions:

General Settings#

In the IG Host window, open the Settings window (File -> Settings) and set the following parameters:

  • Async Mode currently should be disabled.
  • Geodetic Origin — the coordinates that are set for the Geodetic Pivot in the world you have created.
  • Spawn Point — the coordinates of the entity spawn location.
  • CIGIConnector settings, if necessary.

Adding and Loading the World#

To have an environment displayed in IG, you need to load a world (database).

  1. Open the Database List window (Windows -> Database List).
  2. Select a database from the list.
  3. Click Load.
  4. Check if the world has been loaded in the IG window. Click Connect/Reconnect in the Settings window, if necessary.

You can add more databases to the list. The databases you want to add should be located inside the /data folder of the project you work with. To add another world to the database list:

  1. Click Add.
  2. Select the *.world file to be loaded.
  3. Specify the latitude and longitude of the geodetic pivot in that world.
  4. Click OK.
  5. Reopen IG and IG Host.

Adding an Entity#

The entity is added as follows:

  1. Open the Entity List window (Windows -> Entity List).
  2. Double-click an entity from the list to open Entity Properties.
  3. Set the entity Type, and check its position (most importantly along the Z axis to make sure it is not under the ground).
  4. Set other parameters, if necessary.


All added entities are displayed on the interactive map where you can move them changing the geoposition.

Setting the View#

The view defines what actually is going to be displayed in IG.

Notice
Currently only one view (view 0) is available.

To open the view settings:

  1. Open the Views list (Windows -> Views List).
  2. Double-click a view from the list to open its properties.
  3. Use Position and Rotation to adjust the camera relative to the entity. Both positive and negative values can be used.
  4. Parent Entity ID — ID of the entity to which camera is attached. By changing this ID, you can switch between entities.

Controlling the Entity#

To move the entity around in IG:

  1. Select the entity in the Entity List.
  2. Open the EntityControl window (Windows -> Entity Control).
  3. Activate the Enabled option.
  4. Click in the black area within the IG Host window.
  5. Use WASDQE buttons and mouse movements to control the entity. Speed is controlled by using Shift + Mouse Scroll button.


There are three Motion Types available:

  • Spectator — camera follows the entity.
  • Airplane — the entity moves with a predefined speed, the direction is controlled by the mouse movements.
  • Circle — entity moves circle-wise using the entered Radius and Circle Center coordinates.


Only one entity can be controlled at a certain moment, switching to another entity stops the movement of the previous entity.

Adjusting Weather Regions#

To add or remove a weather region, open the Weather Regions window (Windows -> Weather Regions Properties):

Click Add and specify a new ID for the region. Then you can double-click on the created region and a new Weather Regions Properties window will open.

Here you can specify the general properties of the region and manage its layers. You can also specify the scope, position, rotation, and size using the map manipulators:

The following manipulation operations for the region are available:

  • Resize (yellow handles, only for Rectangle region scope)
  • Drag (click)
  • Rotate (mouse wheel)
  • Adding and deleting handles (double-click, only for Polygon region scope)

Adjusting Weather Layers#

To add a new layer, click Add and specify Layer ID along with type.

The layer properties are shown at the bottom of the window and they can be edited.

Besides the common parameters, each specific layer type has some unique parameters:

Setting the Weather#

To control the weather, open the Atmosphere window (Windows -> Atmosphere):

Currently the weather settings are the same as in HEMU.

Saving and Loading IG Host Settings#

In the File menu, the Save State and Load State options are available. You can save all IG Host settings and load them as needed.

Sending CIGI Packets#

To send packets, select the type of packets you want to send:

The corresponding window will open:

You can open as many windows and send as many requests as you want.

Logging CIGI Packets#

IG Host allows tracing both sent and received packets.

In the Settings window (File -> Settings), click the Packet Logger Filter button to open the corresponding window:

In the window that opens, enable the CIGI option and the packets that should be logged.

  • Packets in the top area are the packets sent from Host to IG.
  • Packets in the bottom area are the packets sent from IG to Host.

The information will be displayed in the console of the IG Host window (opened using the ` button).

Last update: 2023-12-19
Build: ()