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.
Working with Content
Working with content includes the following:
- Placing your assets in Unigine native runtime formats inside the data directory of the project folder.
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:
- Textures can be converted into the *.dds format by using the ImageDDS tool.
- 3D models can be directly exported from 3D editors or loaded into the engine from the intermediate formats (FBX, FLT, DAE) via Unigine plugins.
- Assembling the scene via UnigineEditor, namely: placing object, setting up materials,
properties, lighting and physics.
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.
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
- Articles in the section Programming Overview
- Article on Execution Sequence
- Article on Typical Architecture of a Unigine-Based Application