Vulkan on the Samsung Galaxy S7 is potentially a very big deal
Samsung's demonstration of everything the Galaxy S7 and S7 edge will be capable of — once you're able to get your hands on them — was as impressive as ever. As is often the case with this sort of thing, though, there are questions left to be answered. When it comes to performance and gaming capabilities, there's a good chance at least a couple of those questions have to do with Samsung making these phones the first with Vulkan APIs onboard.
We've seen demonstrations of what Vulkan will eventually be capable of in desktop environments, but a big question in need of answering is what Vulkan means for Galaxy S7 and S7 edge owners. Here's what we know so far, and what we can guess is going to happen next thanks to some very smart people working with Vulkan and in the gaming industry.
First things first, what is Vulkan?
Ask anyone currently working with OpenGL in gaming about the need for something better, and you'll get the same answer. Yes, now please.
While a great deal can be done with current technologies, bringing gaming experiences across platforms is a massive challenge. Even with the right people and the right resources, it is far from easy. AMD sought to fix this with a technology they called Mantle, but instead of completing the project moved on to work on DirectX 12. Mantle was instead donated to the Khronos Group as an open source effort to standardize low-level computing and rendering on multi-core CPU systems.
Basically, the goal of Vulkan is to make it easier to get better graphics performance by fully utilizing your multi-core processor. Multi-threading means Vulkan can do what OpenGL ES can't, and the end result is an overall performance boost. Because it is an open source project supported by several small groups, the first release was able to target multiple platforms simultaneously. Android is one of those platforms, and we've already seen several manufacturers immediately start working on ways to support Vulkan for developers interested in building something that relies on those APIs.
When we sat down with Sascha Willems, a developer who has been working with Vulkan for quite a while now, he pointed out another significant benefit to using Vulkan.
So why is Samsung first to market? Basically, Samsung is going to use Vulkan to court developers to create experiences that compete directly with Apple's claim that gaming is better on the iPhone. By offering this before anyone else, Samsung is able to approach developers in the open at events like the company's upcoming developer conference and get great games that play best on the Galaxy S7 and S7 Edge.
Be an expert in 5 minutes
Get the latest news from Android Central, your trusted companion in the world of Android
Is Vulkan an answer to Metal?
Most of the people using Vulkan right now are happy to compare this new API to what Apple has done with their low-level performance framework, Metal. If you've ever seen the way Apple shows off Metal on stage, or used a game built with Metal on an iPhone versus that same game on another phone, you know the difference in significant. Relying on OpenGL ES for 3D gaming on a phone is a resource hog, which means your battery is drained faster for an inferior experience. Metal addresses that in a big way for Apple, and in theory Vulkan could do something similar for Android.
There's a lot more to it than that, as we learned from speaking with Giant Spacekat Head of Development Brianna Wu. As a developer familiar with Metal and Vulkan, she was able to offer a little perspective.
On Android, we've already seen examples of what Wu is talking about. NVIDIA and Samsung have obviously jumped right up and announced support for Vulkan in their own ways, but it'll be until at least the next version of Android before Google has adopted Vulkan naively in all of Android. Even when that happens, it'll only be for the newest version of Android moving forward. A quick look at recent version numbers from Google is all the explanation you need for why this will take a while to be a platform-wide experience enhancer.
Support from Google isn't the only challenge ahead. Widespread developer adoption is a significant challenge on any platform. As Wu pointed out during our interview, Apple's Metal has been out for quite a while now and the number of games supporting the framework is fairly low.
Samsung is hoping to address this directly, and has had some limited success with this approach with their Fingerprint APIs and multi-window app support but, just like Apple and Metal, it'll be a while before we see any significant adoption.
What about Vulkan and VR?
The other big reason Samsung is jumping on the opportunity to be the first manufacturer with Vulkan support is the Gear VR. Samsung and Oculus have done a great job elevating smartphone-based VR above the passive Google Cardboard experience, but the platform is not without performance issues. With Oculus and Samsung both acting as members of the Khronos Group, it makes sense that both companies would be encouraging developers to support this new technology in order to continue improving the Gear VR experience. In fact, according to Sascha, VR is a big part of why Vulkan is such a big deal right now.
Building with Vulkan would make a massive difference in the context of the Gear VR especially, and for game developers it's a great way to do more in this fairly limited but significantly more accessible form of VR. As a game developer, Wu's support of Samsung improving the Gear VR with Vulkan couldn't be more clear.
There's no doubt this will be the exact opposite of an overnight performance increase, but the potential for Vulkan to open doors to better experiences couldn't be more clear. With the Galaxy S7 and S7 Edge, it's a first step for Samsung towards a powerful new gaming and VR experience and a good time to stand head and shoulders above the competition and claim they were here first.