July 5th, 2012
The Thrill Electric, the digital comic we created with Hat Trick Digital, was one of our most technically challenging projects. Each of the ten episodes features hundreds of images, camera effects and animations, integrated videos, music and sound effects – and all in a stunning interactive 3D environment. This is all possible due to the comic engine we built from scratch for this project, which we’ve nicknamed Lumi.
We knew from the start that we wanted to push the boundaries of digital comics with this project, to make it 3D and to make it cross-platform. With this in mind, Unity was the obvious choice. We’d used Unity to build 3D games in the past, including Transformers 3 and Iron Man Upgraded. We’d never built anything of this size and scale before, but we were confident that Unity could handle The Thrill Electric.
The early stages of the project consisted mostly of tool development. The key points we focused on at this stage were:
Focusing on these areas, we created a robust engine and pipeline that allowed us to automate the creation of 90% of the pages, with only a few very rich scenes requiring special treatment. Once we’d laid this groundwork, we then moved on to achieving the aesthetic effects we wanted – for example, the multi-layered 3D layout, the playful camera effects and the bespoke animations.
Development of The Thrill Electric wasn’t completely smooth. The sheer size of the project – over 10gb, at one point! – caused some technical problems. However, the Unity team were supportive throughout the process, helping us to work out the causes of crashes, suggesting changes to our workflow and so on.
In addition, we faced specific challenges when exporting such a large, rich project to iOS. We had to be very careful, when optimising the comic for iPhone and iPad, to retain the user experience without sacrificing quality. In particular, this meant focusing on texture optimisation . Having experimented with many options, we found that, in this case, an external tool (PVRTexTool) offered better compression and image quality than Unity’s built in tools.
We have a few recommendations for anyone working on a project of this size and complexity in Unity. First of all, check the Asset Store for plugins. Plugins can save you days or weeks of development time, and popular ones will already have been robustly tested by a large user base. Plugins we found helpful on this project included:
(Although please note that things move fast, and that there may be better solutions available now.)
In addition, we have more general tips for working on a project of this size. Asset Server was absolutely essential to the development of The Thrill Electric. It allowed us to work collaboratively, provided robust version control (allowing us to roll back to a working version if errors were found) and is fully integrated into the Unity environment.
Unity have recently introduced Cache Server, which is designed to ease the pain of working on very large projects in a team environment. It works with Asset Server to reduce the time taken to switch platforms – which, in our case, took around eighteen hours for each user towards the end of the project!
Following the completion of The Thrill Electric, we’ve enhanced the Lumi comic book engine further. Lumi can now handle a wide range of enhanced comic formats across multiple platforms, and features an unlimited number of pages, panels, sounds, videos, bespoke animations and even Augmented Reality interactions.