Programming
Fundamentals
Setting Up Development Environment
Usage Examples
UnigineScript
High-Level Systems
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine and Tools
GUI
Double Precision Coordinates
API
Containers
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
Rendering-Related Classes

Materials

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.

As Unigine uses its own material system, you cannot use the material provided by any third-party application. To create your own material, you need to inherit from one of the base materials and adjust it. A built-in material library is quite big and contains most of the frequently asked materials, but you can also create a brand new one.

Articles in This Section

Last update: 2017-07-03