The release of Unity 5 was one of the most noteworthy events during GDC 2015. In the following discussion, we will take you through some of the best new features in the latest iteration of the game engine.
This year’s Game Developers Conference (GDC), organized from the 2nd to the 6th of March, offered two key highlights for mobile game developers. As was widely expected, Unreal Engine 4.7 was announced (it is now free, apart from the 5% royalty fee). Unity Technologies had the perfect riposte to that, with the official release of Unity 5 – the game development engine everyone was looking forward to. It has been a somewhat delayed announcement, since app and game developers had been expecting the arrival of Unity 5 since late-2014. The initial reviews are uniformly positive, primarily due to the following interesting features of the engine:
- StateMachine Transitions – Unity 5 supports the addition of enhanced transitions from one StateMachine to another, with the help of the StateMachine Transition feature. The number of callbacks available in the set of StateMachine Behaviors have also been enhanced. Mobile app and game developers can now make use of callbacks like OnStateMachineEnter and OnStateMachineExit, to make their games more customized. The Animation.GetBehaviour() function is useful for organizing slide animations too.
- High-end audio options – Unity Technologies has really gone all out with the audio features of the fifth iteration of its popular game development framework. The option to add mixing graphs is a nice addition, with users now being able to master and mix sounds on a real-time basis. Ducking effects can be implemented with ease as well. Within a group, game developers using Unity 5 can also make ‘Sends’+ ‘Returns’. Custom snapshots can be created too, and there are additional options of organizing the mix in ‘Play Mode’.
- Free version = Full version – The absence of any form of royalties on Unity 5 is one of its highest points (and perhaps something that makes it more attractive to startup mobile app and game companies, than UE 4.7). Coders can now get all the features of the professional version of the engine in the Free edition, provided that their annual revenues from the game development business is under the mark of $100000. There is a Professional edition of Unity 5 still available, of course – which involves a monthly expense of $75. Unity Analytics Pro is one of the best features of the Pro version of Unity 5.
- Physical Shading – For independent game developers, the all-new Physical Shading feature of Unity 5 means that there is no need to learn up multiple shading languages. Single shades can be used in the latest iteration of the game engine, to create a vast range of effects – right from metal and skin, to hairy effects and wooden textures. Even if some slots do not have any textures, they are automatically optimized, to ensure continuity. The makers have clearly gone for a mix of realism and consistency with the Physical Shading feature, and it works like a charm.
- Enhanced platform support – The cross-platform mobile game development support feature of Unity has received a significant boost, with the arrival of Unity 5. The latter supports as many as 21 different platforms – and game developers can create high-end interactive elements (2D or 3D) on virtually any platform of their choice. In terms of sheer usability, this edition of the Unity engine scores over all its predecessors.
- Arrival of the 64-bit editor – For game developers working on Mac systems, Unity 5 comes with a multi-featured and user-friendly 64-bit editor (Windows users can still use the old 32-bit installer though). The one thing that users have to ensure is that all the native plugins being used are also of 64-bit (otherwise, compatibility issues would crop up). The revamped build system (AssetBundle) has built-in support for incremental builds. The dependency chain has been made more organized, with AssetBundle and AssetBundleManifest. The AssetBundle includes all ‘type trees’ as well.
- Interstitial content with Unity Cloud – For app companies which include ads in their mobile games, this is great news. The new and improved Unity Cloud on Unity 5 supports interstitial content, and ensures that third-party software development kits (SDKs) are not required for the creation of such advertisements. After publication, the ad content gets dynamically loaded – ensuring that the performance of the engine is not affected. Cross-promotion of mobile ads is a lot easier too. Cloud Build Pro is available on Unity 5 Personal Edition at $25 (per month).
- WebGL support instead of plugins – Admittedly, Unity 5 is on relatively shaky ground here – but if and when the WebGL support is activated on the game development framework, developers would be greatly convenienced. No longer would external plugins or players (the current Unity Player, while fairly reliable, can be susceptible to malware attacks from third-party software) be required. End-users will be able to play the games on any browser that has WebGL. At present, only Mozilla Firefox and Google Chrome is supported, but Unity Technologies would surely go for an expansion soon.
- Global Illumination, Real-Time – The visual brilliance of mobile games created with Unreal Engine 4 is well-documented. Unity 5 finally emerges as a worthy challenger in this regard, with the innovative real-time global illumination feature. Attractive and personalized lighting treatments can be added to games created for low-end gaming consoles as well as the latest mobile platforms. The detailing is of the highest order, and it allows game developers to really show off their dynamic, creative side.
- Skybox & HDR Workflow – The procedural skybox of Unity 5 enables game development experts to add directional lights to all new ‘scenes’. HDR textures can be used with the new Skybox shaders, while the ‘Inspector Preview’ option has also been given a lift. Textures saved in both .exr and .hdr formats are compatible with the HDR Workflow – and what’s more, they get encoded automatically to RGBM. Game developers can also drag-&-drop cubemap textures in the Scene View.
- Better Physics Engine – This is particularly important for 2D game developers. Version 3.3 of PhysX makes its debut on the Unity 5 engine, with the SDK of PhysX3 being used at the backend. Four different types of effectors are available on the new edition of Unity – Area Effector, Surface Effector, Point Effector and Platform Effector respectively. There are significant improvements in the wheel collider element (suspensions now seem much more real). For mobile app developers working on games that include characters moving quickly, the revamped Continuous Collision Detection feature comes in really handy. No longer would particles simply pass each other even after high-impact collisions!
- Real-Time/Baked Reflection Probes – With Unity 5, shiny, glossy surfaces be created by mobile app and game developers – thanks to the built-in Reflection Probe. This feature nicely complements the Physical Shading and RealTime Global Illumination of the engine. The procedure of working of the Reflection Probes is simple enough: pictures are captured and applied on surfaces that have reflective properties. On the flipside, using real-time Probes might just affect the performance of Unity 5 – and that’s precisely why developers have been given the option to go for baked Probes.
- Cool new animation effects – In addition to the StateMachine transitions (mentioned above), Unity 5 packs in several other powerful animation tools and features. Professional software developers and mobile game animators have identified Transition Interruption, Root Motion Authoring, and Linear Velocity Blending as the best new additions to the game engine. The Previewer Camera has been armed with Scale, Orbit and Pan functionality. Developers can perform edits directly on AnimationEvents (runtime editing). There is a new Animator Gizmo as well, while the older Atomic transition setting has been done away with.
- Support for IL2CPP technology – To ensure top-notch native development experience, Unity Technologies has introduced a new technology – called ‘Intermediate Language To C Plus Plus’. This tool automatically renders all scripted assemblies to the C++ programming language. At GDC 2015, it was mentioned that IL2CPP will, to start off with, be available only for WebGL and iOS game developers. Support will be extended to all the other platforms gradually.
- Cloud Building – Unity 5 allows users to save their projects in three alternative source control repositories – Perforce, Git and Subversion. Teamwork is, in particular, facilitated – since the Cloud Build tool generates emails to all developers involved, whenever a project is edited and a copy of it is saved in the cloud (this happens automatically). 1 GB of Cloud Build space is available for free to developers, while paid versions (for larger projects) are also available.
One of the best things about Unity 5 is that it can be used simultaneously with the previous edition of the engine, Unity 4 (the folder, of course, has to be renamed). Frame Debugging, Version Control and the Timeline Profiler view are some other cool new additions in Unity 5. XIB launch screens (iOS) are supported, as is the fullscreen mode of Android 4.4 KitKat. There have been major overhauls in the Unity game development engine, and all the changes seem geared towards making it more efficient and user-friendly than ever before.