Digital Foundry: iPhone vs. Developers
Firemint, Adept and others discuss the technical and commercial realities of the iPhone line.
Kudos to Apple for succeeding where so many others have failed. The iPhone isn't just a mobile phone, it's a viable games platform with some of the most prolific names in the business pumping out high-quality, low-cost slices of gaming gold. From a personal perspective, I never thought I'd see it happen. Apple has consistently failed in its efforts to transform the Mac into a mainstream gaming platform, but I'm both surprised and delighted by the achievements of the iTunes App Store.
This success has been achieved despite the iPhone featuring an interface that is utterly divorced from what games developers are accustomed to. While valuable experience has been gleaned from the Nintendo DS, touch-screen controls are still unwieldy in traditional gaming genres, while elsewhere, the accelerometer has met with failure – the Sixaxis motion sensor is all but forgotten in today's leading PlayStation 3 titles, and was never much more than an afterthought even when it was in vogue.
Part of the iPhone's success is undoubtedly down to the spec on which it is based. The original launch model and its 3G successor feature a low-power ARM RISC CPU running the show, with able assistance from a PowerVR MBX graphics chip - silicon with a heritage directly descended from Imagination Technologies' Dreamcast GPU. Indeed, almost a year ago, at Quakecon 2008, id software's John Carmack extolled the virtues of the iPhone tech, and said that the base spec exceeded the power of DS and PSP combined, offering Dreamcast-level visuals.
Another important element of allure to the iPhone gaming platform was near-total compatibility with the ultra-desirable iPod Touch. Essentially the iPhone without the phone (and, initially, the speaker), Apple succeeded in creating a full-on portable media device that offered up all the gaming advantages of the mother platform, along with enviable movie-playing and internet facilities.
The final masterstroke was the way Apple made the App Store an unmissable destination, to the point where the unofficial Jailbreak/Cydia development platform has failed to gain traction - a situation Sony must be craving with its renewed focus on PSP homebrew/semi-pro development in its own forthcoming digital distribution platform.
Any one can download and play with the iPhone SDK for free, with a USD 99 yearly buy-in required in order to get your tools and games running on the device itself (otherwise all you have to play with is a "simulator" on your workstation). The only other requirement is ownership of a modern Mac computer - even a bargain basement Mac mini will do the trick.
"It's very easy to get into, much easier than one of the three big consoles," arch iPhone developer Firemint, creators of the hugely successful Flight Control and Real Racing told us. "All the tools you need are readily available to anyone who wants them, the cost is reasonable, the coding environment is much less challenging than console and you have a clear and easy channel direct to consumers."
So in terms of raw potential, does this make the iPhone the best possible environment for wannabe developers and the next generation of bedroom coders?
"I think it depends on the definition of 'best'," says Daniel Boutros of Adept Games, developer of the highly-rated Trixel. "To road-test ideas in a commercial market, it's not a bad place to start, provided you can get the word out for your app or game. To make money, it's brutally tough. It's pretty much like trying to write your own lottery ticket, in the form of a game. There are so many other tickets out there that luck is a big part if you're coming in with an original product."
From a development perspective, the Apple SDK is a great leveller - there is no preferential treatment for the stars of the industry. "Everyone gets the same tools, to my knowledge," says Canis Lupus, lead developer at Woogi Juice, creators of Hexterity. "Whether everyone uses them or not is another matter. Lots of people develop their own additional tools in-house of course; but also some people (I hear) prefer not to use the Apple-supplied toolkit, or use it as little as possible, instead writing to a cross-platform library of their own devising. Personally, I don't think this is a good idea. Apple's tools are one of their secret weapons against the other platforms. We try and take full advantage of them."
"All developers have access to the same SDK, making developing for the App Store a level playing field," agrees Firemint's development director, Kynan Woodman. "The SDK that Apple provides is a great starting point for any game, but to create a full featured game a developer will need additional tools and engines. Companies like Firemint or id have usually already created content pipelines and rendering engines which can be leveraged on new platforms."
In terms of the raw power available to iPhone developers, Doom Resurrection and Real Racing show a level of graphical complexity and finesse that put a lot of PSP titles to shame, but John Carmack is famously on record as saying that inefficiencies in the software are impacting performance.
"At a guess, I'd say that he's talking about direct access to some of the low-level hardware features that might allow for faster-running graphics engines," says Canis Lupus. "As for reasons, remember Apple is making regularly-refreshed consumer electronics products here, not the usual 'console generation' cycle: they're going to want to retain the freedom to develop the device in new directions when they bring out new models, without breaking all the existing software. Placing an API between the third-party coder and the hardware means that they can retain compatibility even if they swap out the parts inside."
"We extracted more performance from the iPhone 3G than most people thought possible in Real Racing," says Firemint CEO Robert Murray. "I can't say that the APIs have held us back too much but we are comparing to other mobile phones. It is true that if we had much more direct access to the hardware then we could do more, much like you can do on consoles. However a mobile phone has to balance a number of competing requirements because they do more than just play games. If Apple is only going to impose very light assurance and testing requirements for third-party apps then they have to be careful with the design of their APIs to ensure that all apps operate well with the OS and the phone's other functions."
"They want to future-proof the games being made on later iterations of the hardware, and of course, earlier ones, with the only exceptions I've heard of being tied into the 3GS graphics chip," says Adept Games' Daniel Boutros. "Hardware manufacturer business models revolve around dropping the price of hardware development, through cheaper chip iterations and other cost-cutting measures. In short, it's dangerous to allow the devs to 'bleed out' the hardware like you can on a fixed platform like Xbox 360, because if your tech leans on a piece of functionality exclusive to a certain chip, chances are it won't run well when that chip is changed..."
That is borne out by the fact that there already several different performance levels amongst the devices on the market, despite being just two years into the iPhone project. The first-generation iPod Touch and the iPhone 2G and 3G seem to be based on the same base spec, while many have noticed that the second generation Touch runs games with a faster lick of speed.
"Already there's a factor-of-two difference between the original iPhone 2G and the most recent iPod Touch - faster processors, faster memory controllers," id's John Carmack told Gamasutra.
Lupus isn't quite in agreement: "There is a difference, but it's small, and typically a developer will target the iPhone/1G Touch devices and give the 2G a little headroom, or perhaps add a little scalability: more particles/effects where possible, that kind of thing."