In March, the first major update to the Vulkan cross-platform GPU API was released, and as of this week, Google have confirmed version 1.1 will be supported by Android P. Here's what you need to know about Vulkan 1.1 for Android development.
First of all, there are several features here are big news for the update as a whole, but aren't likely to be relevant to Android P devices. Multiple GPU support is perhaps the headline feature in this category, as it requires two or more discrete graphics cards to function — not something you're likely to find on your average Android smartphone, even the expensive ones.
What is more exciting for Android P developers is the improved VR support in Vulkan 1.1. Rather than the current naive approach, where programs must manually generate two perspectives of a single scene, developers using Vulkan 1.1 will be able to use a single rendering command to produce two slightly different outputs. This is called multiview, and should improve performance and reduce complexity in VR applications. This should be welcomed by developers trying to make the most of the limited computing power available on even modern smartphones, especially in a context where immersion is the name of the game.
Vulkan 1.1 will also support DirectX's HLSL (high level shading language), specifically its particular memory layout. This should make it easier for programmers to port Direct3D code to Vulkan, e.g. if they wish to add Vulkan support to an existing DirectX 12 game, or port a Windows DX12 title to Vulkan 1.1 platforms like Android P.
Of course, Vulkan 1.1 also includes many other changes too numerous to mention here. You can see the Vulkan 1.1 specification for all of the details.
Vulkan has been part of Android since 7.0 Nougat, so developers have had time to realise the advantages it provides for mobile development, particularly in games. With the latest release being included promptly in Android P, developers should be further incentivised to continue using the API or even to try it for the first time.
Outside of native Android games, emulator and benchmark developers have shown a great interest in adding Vulkan support, through the speed and efficiency benefits that the API can potentially provide. With the new improvements to VR, expect to see more VR apps running Vulkan in the months to come.
Are you using Vulkan 1.1 in your apps? Let us know in the comments below.
Body image source: Khronos Group