This page has been translated automatically.
Video Tutorials
Interface
Essentials
Advanced
How To
UnigineEditor
Interface Overview
Assets Workflow
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Lighting
Landscape Tool
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#
UUSL (Unified UNIGINE Shader Language)
Plugins
File Formats
Rebuilding the Engine 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
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
Content Creation
Content Optimization
Materials
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
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.

UnigineScript

Warning
The scope of applications for UnigineScript is limited to implementing materials-related logic (material expressions, scriptable materials, brush materials). Do not use UnigineScript as a language for application logic, please consider C#/C++ instead, as these APIs are the preferred ones. Availability of new Engine features in UnigineScript (beyond its scope of applications) is not guaranteed, as the current level of support assumes only fixing critical issues.

UnigineScript is a programming language used in Unigine engine and introduced by UNIGINE Corp. for optimizing a project creation process. It is similar to C++ in syntax, but includes some additional features.

You can read more about syntactical differences between UnigineScript and C++.

The purpose of UnigineScript is to make coding easy-to-use even for junior programmers and at once provide the most optimal engine usage.

Why use UnigineScript?

All the features of Unigine engine are accessible via UnigineScript.

Which platforms have UnigineScript?

Platforms supported by Unigine engine (Windows and Linux), no recompilation is required.

What does a UnigineScript program creating process look like?

UnigineScript program can be written by using a plain text editor.

There are two ways of running UnigineScript programs:

  • Via the built-in UnigineScript runtime (by running an engine instance)
  • Via any standalone CLI interpreter (usc) – the same way as .bat/.sh/.py scripts work

How do I get started with UnigineScript?

First, you have to learn how to program in UnigineScript. Read The Language information and try tutorial. You probably will need information about core and engine libraries, High-Level Script and Script Debugging for extended UnigineScript features.

Learn about UnigineScript Programming Language, find out how to start writing programs in UnigineScript, work through the information, and get from Novice to Expert.

Articles in This Section

Last update: 2021-12-13
Build: ()