This page has been translated automatically.
Video Tutorials
Interface
Essentials
Advanced
How To
Rendering
Professional (SIM)
UnigineEditor
Interface Overview
Assets Workflow
Version Control
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Lighting
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#
UnigineScript
UUSL (Unified UNIGINE Shader Language)
Plugins
File Formats
Materials and Shaders
Rebuilding the Engine Tools
GUI
Double Precision Coordinates
API
Animations-Related Classes
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
VR-Related Classes
Content Creation
Content Optimization
Materials
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials

Upgrading from UNIGINE 2.17 to UNIGINE 2.18

This article contains a brief introduction of the key changes in this release.

Events to Replace Callbacks#

We have improved the core mechanism of tracking various events everywhere across the Engine. The new Engine Event System has replaced callbacks making the task of tracking events more reliable and flexible. Switching to the Event System requires manual migration of your code in every place, where you've used callbacks (many classes are affected). However, it shouldn't take too long, as it mainly involves locating all instances of "addCallback" in your code and replacing them with the new approach according to the instructions given in the API Migration Guide.

For more details on the Event System please refer to the Event Handling article.

VR Moved to Engine Core#

VR support has been moved from plugins into the core of the Engine - making its use much more convenient (unified API, easier initialization, less files in the project).

VR templates have been updated to align with the new API and automatically upload VR controller models from OpenVR. Please, use the updated VR templates for your projects.

Notice
  • VR plugins (OpenVR, Varjo, Oculus) that implement similar functionality are considered deprecated and will be removed in the next SDK release.
  • Built-in VR support for the OpenGL API won't be available since 2.18.1, so if needed, you'll have to use the deprecated VR plugins.

Upgrading your VR projects requires manual migration of your code, In case you've used the VR Template (C++ or C#) as the basis, you'll have to replace it with the new one.

For your convenience we have added detailed instructions on upgrading your VR projects to 2.18.

New Animation System (Experimental)#

We continue development of the new Animation System - a solid foundation for the new versatile Sequencer tool to replace the old Tracker system. Although the Sequencer is in the active development phase, you can check out the progress as experimental functionality, which currently is a code-based animation platform with API for all supported languages (C++, C#, and UnigineScript) which can be already used via code in your application logic.

A set of Animation samples (<SDK_folder>/source/samples/api/animation) has been added to the SDK to demonstrate various aspects of use.

For more details on the Animation System please refer to the Animations article.

A set of new classes has been added, so check out Animation System API Reference for more information on the new way of managing animations via code.


See the following articles for detailed information about deleted, deprecated, and new functions, variables, parameters, etc. that will help you to keep your project up to date.

Articles in This Section

Last update: 2024-02-27
Build: ()