It’s a good time to be a mobile game developer.
iOS offers Metal, and now Android has Vulkan, a low-level graphics protocol just adopted by Google. The new tool gives developers more access to the hardware running their apps, while reducing CPU or processor load.
“Even the most careful developers can hit unforeseen bottlenecks, in part because the drivers for some graphics processors may reorganize all of that data before it can actually be processed,” explains Google’s Shannon Woods in a blog post. “In order to address some of the sources of CPU overhead and provide developers with more explicit control over rendering, we’ve been working to bring a new 3D rendering API, Vulkan, to Android.”
Like Apple’s Metal, Google’s new 3D-rendering API (Application Programming Interface) allows developers to engage the hardware their games are running on. For a little extra coding effort, they get extra flexibility and extra power to play around with. Vulkan also tackles the problem of CPU overhead—where processor time is spent communicating with drivers, shuttling data around and waiting for responses—to offer a more streamlined experience.
Although Google is backing the spec, which was put forward by Khronos, it will still support the existing OpenGL standard.
“We’ll be working hard to help create, test, and ship Vulkan, but at the same time, we’re also going to contribute to and support OpenGL ES,” Woods wrote. “As a developer, you’ll be able to choose which API is right for you: The simplicity of OpenGL ES, or the explicit control of Vulkan. We’re committed to providing an excellent developer experience, no matter which API you choose.”
Extra power and bleeding-edge frame-rates, or less time coding and an easier route to the GPU (graphics processor unit)—the choice is up to the developer. Vulkan also provides a unified API for mobile, desktop, console and embedded platforms, so compatible games can run anywhere.
The new tool requires hardware support as well as software integration, which means it likely doesn’t come in time for Android M. However, most high-end mobile devices released within last six months should be compatible: Qualcomm’s Adreno 400-series GPUs and Nvidia’s Tegra K1 are among the chips that can cope with Vulkan.
Developers who want more control over graphics performance have never had it so good: Metal is coming to the Mac with OS X 10.11 El Capitan, while Windows 10 brings DirectX 12 in tow, another graphics API built with the aim of reducing driver interference and CPU overhead.
Image courtesy of Google