Good news, everyone!
Once upon a time, Unity promised to overhaul the way developers would build user interfaces in their Unity-powered games. This was roughly around the time man discovered fire*.
[* In non-snark time, it was about a year and a half ago]
At long last, Unity has shipped version 4.6 of its visual game development system — and with it, the long promised UI editor.
If you’re not a Unity user, here’s what you need to know: Unity is a super powerful game creation engine that allows developers to work in a WYSIWYG-style interface. Games built in Unity work on nearly any platform (iOS, Android, Windows, Mac, Linux, all the next-gen consoles, etc.) with minimal tweaking. You still need to know how to code to make things work the way you want, but the whole system is considerably more visual/drag-and-drop than the game engines of yesteryear.
Unlike most aspects of Unity, a seemingly (/deceptively) simple thing like making a settings screen or a pause menu was a painful task. Until now, Unity developers had two main choices for building in-game interfaces:
- Use Unity’s UI scripting language, which, while functional, was pretty darn kludgey. There was lots of manual scripting involved, particularly for handling things like placement and resizing for different display resolutions.
- Use a third-party UI creation tool, such as the $95 NGUI extension. Unity actually hired the two creators behind NGUI to help with this new official UI tool, though one left after a few months
(Update: Edited to clarify/correct point two.)
With today’s release, however, UI creation gets the support it deserves. Interfaces are designed right within the game editor itself, and “smart anchoring” and smooth resizing systems keep everything where it should be regardless of screen resolution. Unity’s fantastic animation system has been integrated into the UI workflow, allowing for things like bouncing buttons or things that fly into view. Meanwhile, the whole thing has been built with performance in mind, and to work across any platform that Unity supports.
On a slightly less exciting (but still good!) note, Unity 4.6 is also the first to support x86 processors for Android. That means you can now build Unity games for devices like Google’s own Nexus Player.
This update is a free one for all Unity 4.x users, though it’s said that it’s the last major update before Unity ships version 5.0.
For the curious, here’s a 30 minute demo of all the new UI system has to ofer: