FEATURE: Unity at Develop Conf - how to make games scale from mobile to high-end PC

FEATURE: Unity at Develop Conf - how to make games scale from mobile to high-end PC

By Intel developer

August 3rd 2011 at 12:00PM

[Sponsored feature] How games can scale across the spectrum of platforms

A clear theme at the recent Develop Conference was just how  much gaming hardware had changed. It’s not just about consoles any more. It’s  about phones, TVs, tablets, laptops, netbooks, desktops, and much  more.
 
One talk on the subject was  from Aras Pranckevicius from Unity <http://unity3d.com/unity/> , who  provide a cross-platform tool for developing 3D games. Aras’s talk was all  about the challenge of scaling the technology so that you can easily port  software across different platforms, from mobile to high end PCs
 
There are challenges in targeting different platforms, he  said, including the different input schemes (I blogged previously about the  challenge of using the right input devices for games), different  attention spans (mobile is for quick bursts of gameplay, whereas PC gamers  might sit for a couple of hours), different levels of player skill (the  typical iPhone gamer won’t know about the conventions used in modern first  person shooters), and different monetisation models (from boxed product,  through to free games supported by advertising and/or in-app  purchases).
 
These are the bigger challenges, he said. By comparison,  the coding problems are relatively easy, he said, with most platforms Unity  develops for supporting C/C++ and assembly language for lower level work. The  platform-specific portion of the code is a small portion of the total code  base, and graphic and other assets can usually be relatively easily ported  across.
 
While the programming is easy, the testing can be quite  tricky, though. Unity has a device zoo with lots of PCs with different  configurations, as well as a set of mobile devices running different operating  system versions on different hardware models.
 
It’s essential to test with a wide range of representative  devices because the configurations that players have can be radically  different. Pranckevicius said that those installing the Unity web client had  PCs that ranged from 1 to many cores, and 128MB to 16GB of RAM, for example.  The performance difference can be as much as 100 times, although once the top  and bottom 5% are taken out of the equation, the performance difference across  the range is 10 times, still a lot. On mobile devices, Unity has also seen a  10 times difference in performance between the high and low end of device  specifications. A particular problem is that some mobile devices have a super  high resolution screen, but lack the oomph in the GPU to enable complex games  for it.
 
His tips for creating games that scale  were:
 
·         Set a  baseline configuration that the game will not go below, and then add  additional eye candy on top. It’s unfortunate that the superior power of  advanced machines is just being used for aesthetics, but if you change the  artificial intelligence or game logic, you actually create a different  game.
 
·         Move all  the fancy stuff you can offline, so that you’re not using processor cycles  creating images or other assets that you could have prepared in  advance.
 
·         Look to  the past to see the future: think of the techniques used in games of the 90s  to create shadow and light effects despite having limited processor  capability.
 
·         Consider  whether you can drop features if somebody runs the game below your minimum  recommended spec. In the upcoming Unity demo of a top-down 3D shooter, if you  use weak hardware, it’ll drop to a text mode adventure game. That’s a funny  way of making a valid point: you need to decide whether to drop some features  and give people a worse experience, or shut them out  completely.
 
Once you’ve cracked the technical challenges, you still  have the game design and marketing challenges to address. You might well need  your own device zoo for testing, or at least, a healthy community of friendly  playtesters.
 
Aras’s speech covered lots of challenges and opportunities  faced by developers today and here at AppUp we believe you can minimise the  pain of selling across different form factors and stores, by including the  Intel AppUp Center in your marketing plan. It’s a store that provides a single  place where you can submit apps and sell them through app stores belonging to  major hardware companies and retailers (including Dixons in the UK). Find out  more by joining the Intel AppUp developer program for free here.