Imagination Technologies asks Codemasters’ Dean Bilotti about getting the most out of mobile devices
How have you adapted your technology for the mobile market?
Codemasters has always beenplatform-agnostic and our core tech for the past generation – the Ego game technology platform – was designed and built to deliver optimum performance across console and PC platforms. A new generation of Ego is now being developed for the new consoles, high-end PC and now mobile too.
F1 Race Stars is our first title to benefit from this and delivers console-quality visuals, including high dynamic range rendering with bloom, an extensive range of full-screen post-process effects (such as blur, anti-aliasing, dynamic weather) and much more.
What were your main concerns with bringing high-end games to mobile?
From a technical standpoint, the major concerns we had were largely performance-based. OpenGL ES 2.0 as an API appeared to have most of the capabilities we required to adapt the Ego engine for mobile. However, we were unsure how big the gap between console and mobile performance was and whether an adaptation of a heavyweight console engine was even possible.
How did the mobile development tools affect your production pipeline?
We’re used to having to support multiple platforms with the same codebase and tool-chain, so adding another platform wasn’t entirely new to us. However, PC and console games development takes place almost entirely on a Windows PC within Visual Studio. iOS development provided the biggest shake-up for our teams – they had to switch to Apple hardware and an entirely new development environment.
We’ve been happy that we can use the same languages and similar APIs that we use on console and were pleasantly surprised to find most of the tools that we expect in the console world were also available to us on mobile. The Apple Xcode development environment gave us all the CPU and GPU debugging capabilities we need.
GPU manufacturers such as Imagination Technologies provide tools like the PVRTexTool and PVRTexLib, which we integrated into our pipeline to support mobile compressed texture formats. We used the PVRShaderEditor to analyse and optimise complex shaders and PVRTune and PVRTrace to do even more in-depth GPU analysis.
How re-usable were the assets from the original console games?
Completely re-usable. All mobile tracks were designed from scratch as we felt that shorter tracks were more suited to quick gaming sessions on the go. But most of the assets used to build them were taken straight from the console version: drivers, cars and animations. This means F1 Race Stars is built to console specification,
yet with gameplay and game mechanics geared to the mobile player.
One of the main features we’d thought we would need to forgo on mobile was the full-screen post-processing effects that give console content a higher-end look. We were incredibly excited when we ran our first performance tests and discovered that modern mobile GPUs definitely have the required compute performance to enable almost all of these effects, even at the higher resolutions.
What are you looking for in mobile GPUs going forward?
As a developer, you can never have enough performance. Modern mobile GPUs such as the Series6 PowerVR, have nearly caught up with the Xbox 360 and PS3, certainly in terms of compute performance, but the new generation of consoles, the Xbox One and PS4, take another leap forward.
We’re looking forward to seeing if mobile GPUs can close that gap and how quickly they close it without reducing battery life to unacceptable levels.