UnigineScript
The Language
Core Library
Engine Library
Node-Related Classes
GUI-Related Classes
Plugins Library
High-Level Systems
Samples
Usage Examples
C++ API
API Reference
Integration Samples
Usage Examples
C++ Plugins
Migration
Migrating to UNIGINE 2.0
C++ API Migration
Migrating from UNIGINE 2.0 to UNIGINE 2.1

Project Workflow

The article provides key information on the workflow stages for developing a project with Unigine.

Downloading and Installing Unigine SDK

To start developing a project with Unigine, it is necessary to download and install Unigine SDK Browser.

The latest platform-specific version of Unigine SDK Browser can be downloaded at the Unigine developer portal in the Downloads section. After downloading Unigine SDK Browser, you should install it in order to get an access to all capabilities of the engine:

Once Unigine SDK has been installed on the computer, it is possible to start creating a project.

Creating a Project

A new project is created via Unigine SDK Browser. On this stage, you can specify the required project settings.

The created project will have the default file structure that will be changed on the development stage.

Developing a Project

Once the project has been created, you can start to develop it. This is the most important stage as it includes working with content and implementing the application logic.

Notice
The content and the source code of the application must be stored inside the data directory of the project folder.

Working with Content

Working with content includes the following:

  1. Placing your assets in Unigine native runtime formats inside the data directory of the project folder.
    Notice
    The recommended directory structure for storing the content can be found here.

    The following runtime formats are supported:

    • *.mesh file format for static and skinned geometry.
    • *.anim file format for storing animation for skinned mesh.
    • *.dds file format for textures.
    • *.oga, *.ogg file formats for audio files.
    • *.ogv file format for video files.

    You can convert your assets into these formats by means of Unigine SDK:

  2. Assembling the scene via UnigineEditor, namely: placing object, setting up materials, properties, lighting and physics.
    Notice
    Unlike the other engines, Unigine provides its own material system with predefined shaders for materials organized in libraries. You can adjust settings of the provided materials via UnigineEditor in order to get the required result.

    See also the article on World Management.

Implementing Logic

Unigine provides the following APIs for implementing the application logic:

  • UnigineScript API for fast scripting with no code recompilation.
  • C++ API for maximum performance of the application.
  • C# API for integration with the existing C# code base.

You can use any of these APIs to implement your application. Each of them provides access to the engine modules and the content.

Notice
All the files with *.h and *.cpp extensions stored inside the data directory (of both the project folder and the Unigine SDK folder) are written in UnigineScript.

UnigineScript API provides the broadest access to engine functionality, while C++ and C# APIs have the same level of access. It is recommended to use UnigineScript as the main language for implementing the application and to extend UnigineScript API by means of C++/C# if it is required. However, you still can implement your application purely in C++ or C# if you like.

See Also

Last update: 2017-07-03