shown in other instead.
This article will introduce you to UNIGINE 2 terminology. When working with the engine, you may not be able to recognize what are the meanings of some terms. For example, cameras in UNIGINE are represented with the word "Player" which means that the viewport, created into a world, is the first-person camera. Below you will find the basic terms used in UNIGINE with the links to more detailed articles.
A project is an independent entity that contains all the data on your application content organized in a set of directories. The .project file containing metadata is associated with the project. One project can consist of several worlds.
All projects are operated via SDK browser.
For more information see Projects article.
A world is a scene that includes a set of different built-in objects with certain properties, generally:
For more information see the Virtual World Structure article.
Interaction of the Main Components of the World
UNIGINE has three different runtime scripts with the different lifetime values:
For more information see the Execution Sequence article.
Node and Node Reference
Nodes and node references are fundamental objects that form the world:
- Node is a generic entity representing any object that is positioned and stored in the world.
- Node Reference is a node that refers to an external file on the disk, which contains a pre-fabricated node (or a hierarchy of nodes) with all the material and property libraries that are required for its rendering.
For more information see Nodes reference.
UNIGINE provides a set of built-in objects allowing you to create a world containing practically all of the objects present in real life. For convenience, they are formed into several groups that are responsible for different kinds of operations:
- Players represent different kinds of cameras.
- World Objects represent invisible nodes used for world management.
- Sound Objects represent sound sources and reverberations.
- Pathfinding Objects represent objects used for pathfinding.
Surface is a named non-overlapping subset of the object geometry (triangles). Each surface can have its own material or property assigned. It is also possible to enable/disable surfaces independently from each other.
For example, a static 3D mesh stored in a single file (house.mesh) can contain four surfaces: roof, walls, windows and floor.
Unigine has its own material system: all of the materials are organized in libraries and form materials hierarchy.
A material is a set of properties (states, options, parameters) and assets (2D, 3D textures), described in a .mat text file and associated with a particular object surface. A material refers to fragment, vertex and geometry shaders, describing how the material will look like. Shaders are written in the .shader files. Two shading languages, GLSL and HLSL, are used to write shaders.
For more information see the Materials reference.
The properties specify the way the object will behave and interact with other objects and the scene environment. For example, they specify if the object is interactive and whether it is a switch. For a character, properties can specify the character health points or gold amount. Thus, the properties make the nodes comply with the game/application logic.
Properties are organized according to the same principles as materials.
For more information see the Properties reference.