This white paper discusses how Vulkan can be layered over the native Metal API to support Vulkan development on macOS, iOS, and tvOS devices by using MoltenVK. Learn more about developing for the Apple ecosystem using Vulkan.
As graphics and compute hardware has evolved, the Vulkan API has emerged as the new cross-platform API best suited to take maximum advantage of today’s hardware capabilities, and Vulkan is now widely available with native support across a very heterogeneous development landscape and is natively supported on Windows, Linux, and Android operating systems. Just as Microsoft has its own low-level solution in the form of DirectX, Apple’s answer to modern low-level, high-performance graphics is its own Metal API. Not everyone needs the level of control that Vulkan provides, but if you do, you can think of Vulkan as a lower-level successor to OpenGL in that it attempts to enable highly portable, yet high-performance, application development across desktop and mobile device platforms.
MoltenVK is a runtime library that maps Vulkan to Apple’s Metal graphics framework on iOS and macOS. With MoltenVK, you get the performance benefits and added debugging and performance tuning capabilities of the Metal framework on iOS and macOS, without having to rewrite your app that already uses Vulkan.
By building your application or game using the Vulkan API, you can run your modern graphics application or game unchanged across an entire industry of platforms and development tools.