Vulkan 1.0 Officially Released, No Mac support mentioned

The Kronos Group has officially released Vulkan 1.0 to the world. The original release date was planned for end of 2015, but February 2016 isn’t too much of a delay. It has been widely speculated that Apple would support Vulkan, but they have been absent from any press releases regarding Vulkan for the past several months. As of now, Vulkan is not supported in OS X. This situation may change over time with future OS X versions.

Vulkan - What’s the Big Deal?

Many readers are probably wondering “what’s the big deal with Vulkan?” Vulkan 1.0, on its own, doesn’t mark any massive advancement in gaming technologies. However, Vulkan 1.0 marks the beginning of a powerful new potential for cross-platform games and cross-platform performance. 

If Vulkan is successful we will see the majority of games being created using Vulkan and not DirectX. This means that games will be able to be released on all platforms that support Vulkan, instead of just Windows (since DirectX is locked to Windows). The current situation is that virtually all games are created first for DirectX, and then ported to OpenGL for Linux/Mac support later (if they are ported at all).

Furthermore, since games can be created using Vulkan first, they will not have to undergo a performance drop from the porting process that is currently required to bring a game from Windows to another platform. This will hopefully eliminate the performance drop we currently see when porting games from DirectX to OpenGL (as high as a 50% frame rate drop on the same hardware). In an ideal world, a game will have identical performance in Windows, Linux and OS X (given the same hardware).

Platforms Supported

OS X is absent from the list of platforms supported by Vulkan 1.0. The following is the full list of platforms that are able to utilize Vulkan 1.0:

  • Windows 7, 8, 8.1, and 10
  • Linux
  • Android

Supporting Vulkan on those platforms are drivers from the following tech giants:

  • Intel (Linux driver)
  • Nvidia (Windows and Linux driver)
  • Qualcomm (Android)
  • AMD (beta driver for Windows)

Games/Developer Support

The following games/developers have pledged support for Vulkan:

  • Valve: bringing Vulkan support to their Source Engine 2, which means that all modern Valve games will support Vulkan (DotA 2, CS:GO, etc.)
  • Dice: bringing Vulkan support to their Frostbite engine, which is used for games such as Battlefield and Battlefront
  • Unity: bringing Vulkan support to their Unity Engine, meaning that future games created with Unity will be able to support Vulkan
  • Epic: bringing Vulkan support to Unreal Engine 4, one of the most popular game engines.

Metal and Vulkan - a New Relationship?

Mac gamers, like myself, who read the press releases about Vulkan are likely disappointed by the lack of support from Apple. Vulkan support is not entirely out of the question for OS X, and I’m hoping to see it in future OS X versions, but as of now there is zero news about official support from Apple.

There is one interesting technology that may make running Vulkan games using Metal possible. A company by the name of Molten is bringing a technology called MetalVK to market whose goal is to provide a means for running Vulkan applications in OS X using Metal. Here is their summary of their product:

Quote:
MetalVK is an implementation of Vulkan that runs on Apple's Metal graphics framework. With MetalVK, you get the performance benefits and added debugging and performance tuning capabilities of the Metal framework on iOS and OS X, while maintaining compliance with an open, industry-standard, next-generation, high-performance graphics API.”

What this technology will do is allow for developers to easily port their Vulkan games to Metal. Unfortunately it will require developers to manually do that, so do not expect widespread support. It remains to be seen what kind of performance impact this will have versus running a game natively using Vulkan in Windows/Linux.

For more reading on graphics API topics such as this, visit our Graphics API article, which talks about Vulkan, Metal, OpenGL and DirectX.

X