Several advanced components and a visual editor to the Unity GUI
One of the greater flaws of Unity3D® was it’s GUI framework. It is very handy and can solve lots of problems, but it’s definitely not sufficient to make all GUI features of an MMO like Taikodom.
Taikodom has not just buttons, labels and textfields, but modal windows, lists, tables, dropdowns, trees, rich text labels, scroll panes, drag and drop, and so on. To reach these specifications, we made the Bitverse Unity GUI.
I was the official maintainer of the Taikodom GUI in that time. After some very frustrating tries, we’ve decided to make this project. Sure I was not the only who worked to make this tool, but I created almost every component that is available today and was responsible for the entire framework: new features, bugfixing and the integrity of all in-game screens.
In this project I worked directly with the GUI design team and was making the tool easy for them and for the developers to use. The goal here was to make the construction of a screen be less painfull and more efficient.
Before this project, the pipeline to create a screen was: the GUI designer creates the screen inside Adobe® Photoshop® and exportes to a png file. The programmer get that preview and try to make a screen as close as possible of the image (which never happens) inside the code. The GUI designer needed to follow the programmer’s steps (could be more than one at once) until the screen was “acceptable”. This pipeline caused frustration on two professionals: the programmer who spent lots of time designing in the code (the most painfull task ever!) and the GUI designer, who need to accept the screen as it was because of the technical limitations or the programmer fatigue. Plus, since the screen should be inside the game to test it, the task to create a simple screen commonly took weeks.
With this project, the GUI designer could make the screen directly inside the game project (with a drag and drop, WYSIWYG editor) and commit it to the version control. The programmer just get that screen and put the actions and content. This project was very successfull at Hoplon because we place the design task in the hands of the GUI designer and the functionality tasks in the hands of a programmer and everybody was happy with their work.
Soon we realize that this tool was good to be open sourced. So we make a project on Google Project and it’s available for anyone.