The Khronos Group unveiled version 1.0 of its cross platform Vulkan API last month, which is promising big performance gains and easier cross platform development for 3D and gaming applications. Back in January, a panel of graphics experts from both the hardware and software fields discussed topics ranging from how Vulkan may be implemented in engines to how likely it is to be successful, and Imagination Tech has provided us with an interesting summary. The panel consisted of researchers and graphics engineers from companies including Intel, Samsung, NVIDIA, and Unity, among others. So, who better to tell us all about the ins and outs of what the graphics API has to offer?
Khronos Group partners worked for almost two years to develop the API in order to overcome limitations with the existing OpenGL API. The goal was to develop an API that could work across multiple platforms, including mobiles, game consoles and desktops, as opposed to platform limited APIs such as Direct-X. Furthermore, Vulkan wanted to offer lower level access to graphics hardware in order to boost performance, along with more efficient multi-threading and high-end graphical features. The panel admitted that it was a risk to redevelop the whole API from scratch, but that the end result has met its goals and looks to offer some significant benefits.
While the hardware vendor panellists agreed that handing greater control over memory allocations, state setting and call validation to developers could open up big performance boost and should reduce maintenance costs, the software panellists were more divided over the issue.
By doing away with higher level APIs and drivers, developers will be required to spend additional resources optimizing their software, such as game or rendering engines, for the API. At the same time, older drivers and APIs will continue to need support as hardware transitions over. Therefore there could be even larger maintenance costs involved to maintain compatibility, not less. At least in the short term.
As a result, popular game engines that want to support a wide range of hardware may be slower to evolve than consumers hope or expect. Instead, smaller projects with the simplest use cases will likely be the first to benefit. Not to mention that the panellists admitted that understanding the underlying hardware architecture is going to be very important to make the most out of Vulkan, requiring an even higher skill level.
This led nicely onto a discussion about development tools, which the panel unanimously agreed would be essential if Vulkan is to succeed. A selection of tools were already released with the launch of version 1.0 and platform owners are also preparing cross-vendor tools for their operating systems, so this should help aid development.
Despite the benefits offered by Vulkan 1.0, there are clearly other points to consider before developers start actually making use of the new API, and it’s mainly one of support and costs. While the API and hardware is ready to go, ubiquitous software and application support is going to take a little more time.