This page has been translated automatically.
UnigineScript
The Language
Core Library
Engine Library
Node-Related Classes
GUI-Related Classes
Plugins Library
High-Level Systems
Samples
C++ API
API Reference
Integration Samples
Usage Examples
C++ Plugins
Content Creation
Materials
Unigine Material Library
Tutorials
Warning! This version of documentation is OUTDATED, as it describes an older SDK version! Please switch to the documentation for the latest SDK version.
Warning! This version of documentation describes an old SDK version which is no longer supported! Please upgrade to the latest SDK version.

Materials

Unigine represents 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.

  • See the Hierarchy and Inheritance article to know more about how materials are organized
  • See how to create a custom material library and assign a material to the mesh here
  • See the Inherit a Material section to know how to inherit a material from the base one
  • See the Material File Format article to know more about a material, a .mat file and its connection with the .shader file
  • See the Custom Materials article to know basics of a new material creation
Last update: 2017-07-03
Build: ()