Unity: King of the Web, Teacher of Children, Betrayer of Men

Unity: King of the Web, Teacher of Children, Betrayer of Men

If you had to place your money on a platform to win the Classroom Device War, which would you pick? Would it be the sleek and shiny iPad? The flexible and functional Chromebook? Do you favor the tried and true Desktop? Or perhaps you see the BYOD dark horse storming from behind. Made your choice? Good. Now are you willing to bet your company on that?

Cross-platform technology is currently going through an awkward transition. Flash, the old cross-platform king, is slowly growing senile while the pubescent prince HTML5 struggles with multi-browser compatibility. Now, despite some growing pains, HTML5 is robust enough produce fairly complex web tools with its brethren, Javascript and CSS. But what about something more complex, like browser games?

Uniting the Seven Kingdoms

Many companies are attempting to make education more “fun” and engaging through games. For these well-intentioned developers, there is one tool that seeks to make their lives easier by uniting the Seven Kingdoms of gaming -- simply called Unity. This noble development engine provides a clean and scalable platform for building high-quality 3D and 2D games. With the mere click of a button one can deploy to seven realms of gaming: web browsers, MacOSX, Windows, iOS, Android, Xbox and Playstation. Many exciting educational games have already been built with Unity, such as Mathbreakers and Jumpido, both of which have plans to expand their reach to tablets and consoles.

I have used Unity extensively for the past five years and can attest to the power of the platform. It is great for both prototyping and developing full-fledged applications. For an example of what can be done, see the game  Tumbling Tony which was built in a hackathon by Shu, Shin, and me. Install the Unity web player and start tumbling!

Click to play Tumbling Tony

Valar Morghulis

If you are on a Mac or Windows machine, then you just got a first-hand experience of the Unity experience, both good and bad. Great games, mildly annoying plug-ins. Those of you on Chromebooks? Sorry, you weren’t invited to the party.

Unfortunately, the Unity web player is not compatible with ChromeOS and Unity hasn’t supported Native Client builds since version 4.2. Even worse, they dropped Chromebook support in November 2013 with absolutely no prior notice, hiding the news at the very bottom of a change list. This left companies serving schools on Chromebooks in the unenviable position of having to explain why the software they paid for suddenly stopped working in the middle of the school year (Disclosure: I was the founder of one such company which ended up folding due to these events. The memory is still vivid and painful).

The millions of students who now use Chromebooks are not the only ones to have suffered from Unity dropping a platform. In April of 2013, Unity also dropped Adobe Flash support, leaving even powerhouses like Disney standing forsaken at the altar. (Disclosure: I worked on this unreleased Disney project for two years before it was cancelled due to Unity issues with Flash. Valar Morghulis, indeed).

WebGL is Coming

Do not fret, for we are not without hope. Emerging from the depths of turmoil, there have been whispers of a savior known as WebGL. Created by Mozilla, this is a Javascript API for rendering 3D and 2D graphics that will work on almost any browser (as usual, IE is lagging behind) without any need to download a plug-in. This is great news for any company with a school-targeted product since schools are notoriously averse to plug-ins.

Unity, for the time being, says it is committed to supporting WebGL. They have published a WebGL version of AngryBots, their longtime demo app, and amazingly, it just works. No updates, no installations, no downloads necessary. Also encouraging is that the WebGL version of AngryBots is about 8MB smaller than web player version, meaning faster downloads. Here’s what Unity had to say about the slimmed down payload:

“We decided on a new deployment strategy for WebGL; next to stripping managed code, we also strip out parts of the engine that are unused by the deployed game, greatly reducing needed download size. The reasoning is that, because WebGL is not a plug-in, we need to deliver the engine with the content. To keep that as small as possible we do some pretty clever stripping of engine modules.”

Every Flight Begins with a Fall

Bottom line? Unity is an amazingly versatile piece of software whether you are building a prototype or a triple-A title. But it has a rather spotty history when it comes to new deployment platforms.

However, if Unity can deliver on their promises of WebGL, they will become the link between high-end game development and cross-platform HTML5 that edtech has been craving. Educational game developers will not need to commit to a single deployment platform, greatly reducing risk and expanding the potential market size. This could be a tremendous game changer and if the AngryBots demo is any indication, the future looks bright.

Kudos, Unity. I am officially back on board. Don’t break my heart.

STAY UP TO DATE ON EDTECH.News, research, and opportunities - sent weekly, for free.