Unity Technologies Blog

A glimpse inside Unity Technologies…

Unity Tech signs a three-year deal with LEGO!

As y’all know the user base for Unity is exploding and that growth includes developers across the spectrum, from games to non-games, from small development shops to large studios, from social media outlets to major media providers. Today we have news about not just a major media provider but a major toy manufacturer as well, that company being none other that LEGO! Allow me to quote a bit of the press release that went out today:

Building on the success of LEGO® Star Wars: The Quest for R2D2 and BIONICLE: Glatorian Arena, Unity Technologies, the provider of the market-leading Unity development platform for 3D interactive content on the Web, PC, Mac, Wii™ and iPhone, announced today a new three-year deal with the LEGO Group, in which the company will standardize on Unity authored content for 3D content on www.LEGO.com.

As one of the world’s leading manufacturers of play materials for children, the LEGO Group recognizes the need to offer an innovative online environment for consumers to share their passion and creative flair. To do this, the LEGO Group is developing its web strategy to deliver an online consumer experience to match and enhance the real world fun and invention of LEGO products.

The LEGO Group identified Unity as the best 3D platform available to fulfill its short-term and long-term requirements.

“We’ve invested a great deal of time evaluating technology for the next phase of www.LEGO.com,” said Claus Toftegaard Matthiesen, Technology Manager of the LEGO Group. “We believe that Unity’s flexibility, strength and power will give us scope to create world leading content for our consumers and are looking forward to the cooperation.”

You can read the full press release here.

I personally find this exciting for a number of reasons. Of course it starts out by being a great business deal for Unity Technologies, so let’s get that one out of the way. But worth noting is that it will also serve all of us very well by helping push vast numbers of web player installs due to the high traffic numbers they experience on their website, that’s great for everyone using or adopting Unity for web based content. Finally, it’s also interesting as it’s yet another bit of validation that not only is our technology up to the task of delivering the best in-browser game content possible, but that it’s worth doing so for a mass-market site targeting users of a younger age.

All around this is a good deal and it’s news that I just couldn’t help sharing. Kudos to everyone that was involved in securing this deal, both on the business development front as well as our hard working engineers, for without them none of this would be possible!

Unity and Mobile pt. 2 : The iPad Cometh

Moses-Jobs72Ok, so the iPad is now officially old news. Let me get something out of the way, first: yes, we will support it. Yes, we are aiming for 0-day support. If we get there or not basically depends whether on if Apple can get us early access to the device.

With that out of the way, here’s what I actually had in mind – Looking at the event, Apple unveiled pretty much what most of us expected – but it wasn’t until a bit later that it hit me what is so great about this:

I’ve never before seen a computer that is so designed for consumers. It goes straight into the stream of iPod, iPod Touch, etc. Sure, it’s using general-purpose chips behind it, so it’s not like it can’t do “real” apps, but the focus is here 100% on consumers. That means games.

Apple has been taking games more and more seriously – I guess that started happening when they realized games were one of the main movers of iPod Touches. This means that as far as we’re concerned what we’re looking at is the launch of a new console. For indies it’s even better: Apple actually gets the whole “make life sweet for developers” – so it’s a platform that you can make games on and you can even earn money – all major console’s stores are simply embarassing compared to the AppStore. In short, on iPod/Pad/Phone the hoops you have to go through to develop, publish and get paid are crazy low. If you’re one of those people who think the submission process is slow/bad/bloated, just try becoming a registered developer with Sony or Microsoft :)

Naturally, we want to be there the moment it happens. Whenever new and exciting platforms come out, we want to be there. Our goal is to let our users publish anywhere. We can’t support all platforms instantly, but Apple have had an uncanny ability to produce hits. With the iPad I think they’ve done it again.

So we are scrambling like mad to get support for it. On the iPhone our guys worked round the clock to get it out – hopefully that won’t be neccessary this time, but we’d always rather burn some midnight oil than end up like the large behemoth we’re currently seeing on the sidelines – 18 months after iPhone launch with no shipped support for this platform mumbling OMG! The Net Is Broken ;)

Granny Theft Tofu

This past weekend was the Global Game Jam, where teams from all around the world worked tirelessly to create amazing games in a single weekend. Here in Copenhagen, the local branch of the Global Game Jam is the Nordic Game Jam that was held at the IT University of Copenhagen. The cool things about the Nordic Game Jam are that it’s the “original” jam, and Unity’s old office is inside the ITU itself! So of course we had to be there. Six of us from UT presented talks on using Unity as an Artist or a Programmer.

You may have heard about Fun Fridays here at Unity HQ. Those of us who were giving the talks thought it would be a good idea to spend some Fridays to make a small game that we could use as a visual aid. This turned out to be a great idea. We created new material to help teach new Unity users, and those of us who worked on it have a really fun game to share with friends, family, and the community! I’d like to share this game with you now… We call it Granny Theft Tofu and you can play it in the embedded webplayer below.

The goal is to get yourself to the Tofu shop and back home again before time runs out, all while causing as much traffic carnage as possible. Arrow keys will move Granny around. And there’s an easter egg in the game too; an Amiga graphics mode.  See if you can find it!

I’m incredibly happy to have helped create this game! I think everybody on the team learned something about Unity that they didn’t know before. It was also nice to sit down with Unity as a user once again, and help others learn what it is and what makes it so special. I hope you’ll all enjoy the game, and perhaps walk away inspired.

Author once, deploy anywhere?

A long held dream in the development world has been the idea of “author once, deploy anywhere”. To explain what is meant by that is simple, it’s the notion of being able to author your content one time, then through the simple click of a button deploy your content on any platform you like, whether that’s on the desktop, the web, gaming consoles or mobile devices. Nobody is quite there yet and there is more work to be done, but with that in mind Unity Technologies is making tremendous progress in making this dream a reality, and Unity is already used by thousands to distribute content across a variety of platforms. While the benefits of this author once deploy anywhere notion might seem clear at first blush, there are a few points worth discussing in particular, so let’s look at those in a bit more detail.

Read the rest of this entry »

Unity and Mobile

I wanted to take a moment and talk a bit about how we see mobile platforms here at Unity.

Any talk about mobile will start with the iPhone – it’s the device that really showed even disbelievers like me that you do want a general-purpose computer-like device in your pocket. The iPhone has been great for us – we got in on it early and let our users publish to it – adding “quite a few” users in the process. We’ve now shipped 6 versions and over 500 Unity appstore games have been launched. Pretty much whenever anyone does a list of top-something-or-other on iPhone games, you can spot a couple of Unity-powered games.

What games are people playing on the iPhone? From what I’ve heard based on data from ingame ad networks, an interesting trend is surfacing: iPhones are typically used for play sessions of around one hour – mainly in the evenings. If iPhones are really giving traditional consoles a fight in their own turf, this means that mobile devices have a huge future in the gaming space as well.
So how will all this play out? I expect that over the next few years we’ll see a bunch of mobile platforms appear. Some of these will stay and quite a few more will die – in the end, I wouldn’t be surprised if we ended up with iPhone, Android and a third player. Obviously, we want our customers to be able to deploy their games to as many platforms as possible – this means that we could be adding support for some that will possibly go away in the end – that’s ok. While platform fragmentation is annoying to us, the ease of targetting multiple platforms is something we’ve always held close to our heart. Maybe we’ll suffer a bit when porting, but at least it’s only us and not all the people that just want to get creative. It’s our unofficial slogan: We suffer, so you don’t have to.

Some of you have probably seen the announcement that we’re going to support NVidia’s Tegra 2 chipset. This is the first of various things we’re ready to announce and also says something about how we see the world: there’s chipsets and OSes (and then there’s the physical devices). We work on supporting a chipset (like SGX/ARM for iPhone) and we work on supporting an OS (Windows, MacOSX, iPhoneOSX). Behind the huge range of mobile devices mentioned above, there’s a somewhat smaller list of stacks: Broadcom, Qualcomm, Apple, NVidia Tegra – with an OS on top: iPhoneOSX, Windows CE, Linux, Android, etc. those are the ones that are real work for us to support – but once we have some more of these, adding new devices shouldn’t be that hard.

And then there’s the Apple tablet (sure, there’s others – but who really cares?). I expect it to be OSX-based, probably some SGX/ARM chipset – while I know as little as anyone else, I’m basically thinking of an oversized & clocked iPhone 3GS. Supporting it will be some pain, but nothing major (these things are hard to say – half the time on the original iPhone port was spent on one single issue).

Either way, I think gaming on mobile platforms are going to be huge, and I think we’re small and nimble enough to be among the very first with support for many of these platforms. If any of you are going to GDC, I’d love to meet up and chat about these things – drop by our booth (or failing that, there’s a wonderful comment thingy below this post).

Emacs mode for Unity Javascript

As you  may have heard before every friday we spend our time working on personal projects.

I have been working on a Unity Javascript mode for Emacs for a few weeks ago and now is in a state that is usable enough to share with the community :) .

emacs UnityJS

As you can see it colors comments (multiline and single line), has support for basic data types, and also supports string coloring.

It also colors function declarations, if – else decisions, while and for/foreach loops and most importantly, it colors all the Unity functions supported by the engine!

Feel free to modify it. Also if you do anything interesting that can be added to the mode just let me know!

If I have time I’ll add a function to open the browser and search the docs for the word where the cursor is positioned. If for some reason you make it before I can, then just contact me and I’ll add it to the mode :) .

Anyway, if you, like me, are an emacs addict, you can grab this mode from here: unityjs-mode.el

To make it work, just add this to your .emacs:

;; UnityJS mode for emacs
(autoload ‘unityjs-mode “unityjs-mode” “Major mode for editing Unity script code.” t)
(require ‘unityjs-mode)


;; UnityJS mode for emacs
(autoload 'unityjs-mode "unityjs-mode" "Major mode for editing Unity Javascript code." t)
(require 'unityjs-mode)

And make sure to load the path where you are going to store the mode ;) .

2010 Trends

2010 Trends – Unity Technologies CEO David Helgason
We’re living in exciting times, and in some ways we here at Unity Technologies are in a unique position to be part of them. Here are the trends that we think are most important for the Unity community as a whole in 2010 along with what you can do to be part of
We’re living in exciting times, and in some ways we here at Unity Technologies are in a unique position to be part of them. Here are the trends that we think are most important for the Unity community as a whole in 2010 along with what you can do to be part of them.

Without further ado.

The Year of Gamification, Part 1
We call the adoption of game technology and game design methods outside of the games industry “gamification”, and this is a really broad trend.

Unity and other game technologies are being used across more than a dozen sectors that have little or nothing to do with games. Architectural visualization is an obvious and older example. But apart from that we have some of the world’s biggest engineering and manufacturing companies, as well as several actual armed forces as our customers. TV production companies use Unity and other game engines to produce live TV shows and Machinima videos. Big corporations make employee training and simulation applications using Unity, and some of our customers have gone into online meeting and collaboration. Game technology being applied to all these areas means that Unity users are valuable to many and not everyone has to make a living from games.

Action item: Sell your skills outside the games industry. With a knowledge of other industries, you can create new and innovative products or businesses servicing these industries. The sky’s the limit.

The Year of Gamification, Part 2
A second aspect of gamification is that game design methods and strategies are being used outside of games to design better products and user experiences. A boring site like Mint.com has experimented with turning personal finance into a game, social networking experiment FourSquare maintains high-score lists for people who bar-crawl, and natural-language search startup Siri hired an accomplished game designer to design their user experience.

Action item: Learn game design and apply it to everything – how people sign up for a website, how people “succeed” in using your product, how customers share it with their friends and become leaders of user groups/clans, etc. Game design can be used for all of this.

Another Golden Age for Garage Developers
We are definitely going to see even more quality games done by small teams in 2010. With very little risk and by mainly investing their own time, a small team of 1-2 people can make a hit game that will sell millions of units. More importantly (and what makes this different than 4 years ago), there are now many more channels through which to distribute and sell such a game. Many such games are receiving world-wide acclaim.

Action item: Find an awesome partner and go create!

Publishers Continue to be Valuable
With casual, online and mobile games requiring smaller production budgets and eschewing retail (and thus expensive and slow) distribution in exchange for digital, the game industry was expecting to get rid of the publisher as a concept.

But as the iPhone ecosystem clearly proves (as well as the web somewhat less clearly with portals like Shockwave.com and distribution companies like Zynga and RockYou), the publishers stay. Though they may not be forwarding cash and fully owning the game IPs, their expertise in marketing, game design and online distribution metrics and strategies make them a valuable, if no longer totally required, partner to the game developer.

Action item: Consider working with a publisher. Fortunately with publishers’ leverage lessened, they are typically less demanding with regards to what they have to own (IP, sequel rights, revenue share). Or become your own publisher by building that expertise. This is not a simple task, but has been done by some of the top online game developers.

Everything Becomes a “Console”
This one is somewhat controversial. It seemed that with the move towards mobile and web, the closed ecosystems of the console world would be under siege and eventually collapse. What game developer (except perhaps the ones most entrenched in with the Nintendos-Microsoft-Sony trinity) hasn’t fantasized about this walled garden having its walls rammed down?

Well, welcome to the new world. The iPhone has proven that given the right amount of “openness”, neither consumers nor developers really mind closed platforms.

Even on the anarchic web (regions of which remind one more of a Mad-Maxian post-apocalyptical cyberspace than an enlightened utopia), Facebook is in the process of creating a closed environment within which consumers and game developers can meet and exchange fun and money (more or less) safely.

This section could also have been labeled “the Rise of the AppStore Model”, since it’s more the App Store than the gaming console which inspires this megatrend. And framed like that, it might have made people happy. But this is a problematic trend (to say the least) that should make us stop to think.

Action item: Make use of this. Or if you’re brave, build your own!

Facebook Wallet, Apple Tablet, Unity on Facebook
And then are the obvious ones.

Of course Apple will launch its tablet. We even know the screen-size and CPU make. The only uncertainly left is what day it launches. And its price.

Surely Facebook will launch a payment platform which in tandem with Facebook Connect will dramatically transform the face of microtransactions on the internet. If they do this right, it will finally enable the web-wide microtransactions which we’ve been dreaming of since the dot-com era.

And of course Unity will be big on Facebook. Several major games will get launched on Facebook, offering awesome games to hundreds of millions of people (not to mention significantly moving the needle on adoption of the Unity plugin).

Action item: Left as an exercise for the reader :)

Please send us your project folders

In my other recent blog post I described the webplayer regression rig which we are building.  When we find regressions it is extremely helpful if we have access to the project folder used to create the game we have broken.  Seeing exactly how assets are handled and the script involved can save us a lot of time.  Also, we’d love to extend the regression rig and get it to test daily builds of the editor, too.  We would love to launch Unity, load up your project file and check that everything still works, including asset importing and building the game. Testing real world project files will help us make Unity better.

If you felt able to provide us your project folder please contact us at support@unity3d.com, let us know who you are and where your game is online.  We can then talk to you about how best to get us the project folder.  We see the benefit to you is knowing that future Unity release work seamlessly with your project and your upgrade costs are minimized.  This can save you some frustration too.

Possibly you might feel uncomfortable sending us your assets.  I have written a short FAQ that should help answer some of your concerns.  Feel free to ping me on the forum (handle is dendrophile) if you want to know more.

On Web Player Regression Testing

One of the unwritten commitments we make to our customers is that our webplayer will play back their content identically in all versions we publish.  We constantly tweak and improve the webplayer. For example webplayer 2.6 added threaded background loading and improved animation culling. Each change that we make intending to improve the webplayer has the potential to break a customer game, and we don’t like that.  Remember, webplayer 2.6.1 can play content authored with Unity 2.0, 2.1, 2.5 and so on.  To make sure that we don’t break customer games with new webplayers we have to do a shed load of regression testing.  Lots and lots and lots.  So much so we have built a dedicated test rig to do the testing for us.

The regression rig has a server and multiple clients. The clients are PCs and Macs with our internal daily build webplayer installed. A server has a big list of our customer games, and sends jobs to each client that basically say “play this customer game”. Through a little bit of magic the clients take screen shots every second that the game runs, and these screen shots are forwarded onto the server as a record of the test execution.

Currently we have nine clients (7 windows and 2 mac) in the rig.  Seven of these are physically located in our UK “test room”, the other two machines are under developers’ desks.  We are slowly adding more machines. When a webplayer is installed we get a snapshop of the machine configuration.  Using this database we can make sure we have the most popular machine specs represented in the rig.

Photo of the regression rig

Photo of the regression rig

Obviously, the games require inputs such as keyboard and mouse entry, random numbers, assets fetched from remote websites.  These inputs are all faked up when the regression rig runs.  What we do when we first get our hands on a customer game is give it to one of our testers who plays the game for us on the rig using the latest released webplayer.  In this manual first-run mode we capture all the inputs and store them in an input file.  Once we have this, we then generate a “golden” set of screen shots and know that these inputs generate these images.  The idea is that we now know what images the game should generate with a given set of inputs.  The regression rig can then compare images obtained from a customer game played back using the daily build webplayer against the golden set and we can tell quickly when one of our talented developers has broken something.  When we find we have broken the webplayer we can iterate back through code checkins looking for the commit that first introduced the problem.

The regression rig should help us find problems with the webplayer before you do, but as always, please let us know (by sending in a detailed bug report) if you have issues when you publish your game to the web. Oh, and for the record we do have people employed to do testing, it is not all done with the rig.

Four years ago today…

…I took a plane to Copenhagen.

Well ok, it all started a bit before: Read the rest of this entry »