Epic's Unreal Engine 3 is one of the most successful and powerful pieces of game middleware ever.
The process of porting it over to iPhone certainly wasn't an easy one, nor is it complete one yet, explained senior console programmer Josh Adams in his GDC talk entitled 'Bringing UE3 to Apple's iPhone platform'.
"You can't expect to take Gears of Wear, hit a button and expect it to work on iPhone," he laughs.
Indeed, Epic couldn't even consider porting the engine until the release of the 3GS class-hardware as this marked the first Apple devices that supported OpenGL ES 2.0 and the programmable shaders which are the bedrock of the Unreal Engine 3's rendering system.
For that reason however, any Unreal Engine 3-developed games - and to-date none have been announced - will only work on 3GS iDevices.
It's a limitation that Adams acknowledged but said wasn't important in the longer term as legacy iPhone 2G and 3Gs dropped out of circulation.
Objective Objective-C
Other initial obstacles included the fact that UE3 is a C++ Visual Studio Windows-based development environment and codebase that required components to be reworked in Objective-C/Xcode.
Significantly though around 90 percent of Unreal's core code works unmodified once these elements have been ported. The size of UE3 for iPhone is around 18 MB, although it's expected that this could be further optimised.
Another key reason is that Unreal Script - which makes up the bulk of the gameplay logic of Unreal games works unmodified on iPhone. This only happens thanks to the very close cooperation between Epic and Apple that enables its virtual machine to be supported on iPhone; a technical feature that no other game developer is allowed due to security restrictions.
In turn, this means that UE3 developers for iPhone will be able to author their games using the standard Unreal Editor; something Adams said was fundamental to the entire project.
Cutting your cloth
Developers will have to very careful how they make their games however, with features such as specular lighting and normal maps not being supported due to a lack of memory on iPhone.
Equally complex material properties, shaders and dynamic light sources that are standard on Unreal Engine 3-powered consoles games all have to be vastly simplified for iPhone.
The result is a demo of Unreal content (Unreal Tournament 3) that runs at 25 to 30 frames per second on iPhone. There's still plenty of work to be done however, notably in terms of the memory limitations.
In response to a question, Adams said that the main hardware bottleneck for the demo was being CPU-limited. The GPU was fine because of the way the shaders are simplified down.
As for more speculative questions, there was no news about when the first UE3 game for iPhone would ship, let alone when Epic would be formally releasing the technology, and announcing the business model for interested parties.
When Epic gets hardware, it would be seeing how the engine worked with iPad - of course - and there was a definite 'no comment' in terms of the likelihood of support for Android, although a demo has been shown running on Nvidia's Tegra 2 mobile platform (it's unclear what OS this is running).
News
Contributing Editor
A Pocket Gamer co-founder, Jon is Contributing Editor at PG.biz which means he acts like a slightly confused uncle who's forgotten where he's left his glasses. As well as letters and cameras, he likes imaginary numbers and legumes.
Related Articles
Top Stories
as
News
57 minutes ago
Nexon banks on big Dungeon & Fighter Mobile China launch as Q1 revenue declines
as
News
2 hours, 7 minutes ago
Netmarble cuts losses but revenue falls in Q1 after lack of new game releases
News
5 hours, 56 minutes ago
Epic Games hit with €1.1m fine for unfair commercial practices in Netherlands
Feature
May 14th, 2024
Matej Lančarič's Squad Busters deep dive: Under the skin of 2024's biggest launch yet
Feature
May 14th, 2024
53 top mobile games in soft launch: Squad Busters, Battle Guys: Royale, Plants vs. Zombies 3, LEGO Hill Climb Adventures, and more
Events
Valencia Indie Summit 2024 | Europe | May 16th |
Mobidictum Meetup Berlin May 2024 | Europe | May 16th |
Digital Dragons | Europe | May 19th |
GamesBeat Summit 2024 | North America | May 20th |
Mobidictum Meetup Tallinn May 2024 | Europe | May 21st |
Nordic Game Spring 2024 | Nordic | May 21st |
Impact 2024 - Indie Games | May 23rd | |
Morocco Gaming Expo | Africa | May 24th |