The new MoltenVK developer API aims to ease porting of games to Apple hardware, and its native support of Metal graphics, by by bringing the cross-platform Vulkan 3D graphics API to both iOS and macOS.
The Brenwill Workshop is the development company behind the MoltenVK API, claiming game developers who use the set of routines will gain the debugging and variable performance tuning benefits of Apple's Metal, in addition to the speed benefits and high performance of Vulkan.
Vulkan is an open standard, developed by the Khronos Group, an industry consortium dedicated to the creation of open standards for the graphics industry. The OpenGL and OpenCL standards, heavily used by Apple, are maintained by the Khronos Group.
One of the biggest historical obstacles to porting games to macOS has been Microsoft's ubiquitous DirectX graphics API. Developers need to translate the original DirectX calls into OpenGL, OpenCL, or Metal, adding to the complexity of migrating code which can already be hundreds of thousands of lines long.
For now, Vulkan has only been implemented in games and the underlying engines that render the environments. The new Doom, for example uses the API. Popular game engines Serious Engine 4 by Croteam, and the more widely used Unreal Engine 4 by Epic Games have Vulkan support.
Android 7.0 Nougat is also expected to natively support Vulkan for speedier overall rendering on compatible Android hardware.
Vulkan leverages better utilization of multiple core CPUs, as found on every Mac, as well as better execution of GPU hardware-specific routines. Doom benchmarkers are seeing a 30 to 40 percent increase in game performance with Radeon cards on the title. Additionally, the Doom lead rendering programmer is also reporting efficiency improvements of between three and five milliseconds per frame — significant, since a frame must be rendered for the game in 16 milliseconds or less.
While Apple is among the members in the Khronos Group, Apple has not as of yet released its own support for the API in either iOS or macOS. Initial specifications from the Vulkan release in January of 2016 state that Vulkan will work on hardware that currently supports OpenGL ES 3.1 or OpenGL 4.0.
GPU chipsets that support the initial general Vulkan release include the discrete GeForce 600 series with the "Kepler" architecture and newer, the integral GPU in the Skylake Intel Core-series processor, and the discrete Radeon HD 7700 series with the "Oland" architecture and newer. Skylake processors are found in the October 2015 iMac lines, as well as the new 2015 12-inch MacBook, making those models compatible with any released Vulcan-Enabled application, and the contained enhancements.
3 Comments
Looks like this might be a better route for Apple to go than Metal. It's all very well to own the underlying technologies, but for things like graphics you need to be prepared to plough resources in and iterate regularly, which it doesn't seem like Apple is doing, and there doesn't appear to be a great deal of value in a proprietary graphics API.
Same as @crowley I think they must open source Metal as what they done with Swift, and port it to Vulkan to make sure that they and app developers will benefit from it, and all that if there is a special tech in the Metal API. They done well earlier when they worked with Intel and others to make USB-C and keep it usable by others.
Agree with above, but I find it highly unlikely that it will happen as they have invested a lot of work in Metal, and it is a different approach and serves different purposes compared to Vulkan. Also, before we get any ports or modern games, we still need capable macs with capable GPU's first. Several developers pledged to support Metal but have not delivered yet, as there is nothing to deliver too.