The goal of Vulkan is very similar to that of Apple’s Metal API for iOS and OS X. Vulkan is a low-overhead graphics API that gives developers more direct access to the graphics processor and control over how their graphics are rendered.
In today’s announcement, Google argues that current APIs are “not designed for multi-threaded use, requiring synchronization with locks around calls that could be more efficiently done in parallel.”
The Vulkan API is being developed and maintained by the Khronos Group — the organization behind OpenGL,WebGL and similar standards. Indeed, Vulkan is essentially the next generation of OpenGL. The Khronos group first announced Vulkan in March, together with a range of software and hardware partners. But the API needs support from the operating system, too, and at the time, Google wasn’t yet on board.
“Hardware and software companies need an open 3D API to maximize market reach and minimize porting costs, and Vulkan is being forged by a broad consortium of industry leaders to do exactly that,” said Neil Trevett, president of the Khronos Group. “Vulkan’s adoption and availability on platforms such as Android, Windows, Linux and SteamOS will ensure strong developer support – creating a wealth of high-quality content and applications for any platform that leverages this royalty-free standard.”
The standard is still a work in progress, though. Chances are it won’t be part of Google’s Android M operating system when it launches later this year, but companies like Imagination Technologies (the company behind the PowerVR GPUs) are already demoing Vulkan’s power on Android today (using a prototype driver).
Google supports the OpenGL ES standard on Android, and the company says it will continue to do so. OpenGL ES will likely remain easier to use for developers for the time being, but Vulkan will give them more control.
“We’re committed to providing an excellent developer experience, no matter which API you choose,” Google technical program manager Shannon Woods says in today’s announcement.