Programming
Fundamentials
Setting Up Development Environment
UnigineScript
High-Level Systems
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine and Tools
GUI
Double Precision Coordinates
API
Core Library
Containers
Engine Classes
Node-Related Classes
Rendering-Related Classes
Physics-Related Classes
Bounds-Related Classes
GUI-Related Classes
Controls-Related Classes
Pathfinding-Related Classes
Utility 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