There has long been interest in Vulkan on the Mac platform, as the next graphics API direction for developers working across platforms and devices. Now Khronos and LunarG have released a Vulkan SDK (software development kit) ported to Apple platforms.
Vulkan on Apple
Apple has forbidden Vulkan drivers on their macOS and other operating systems, eschewing a cross-platform graphics API framework for its proprietary Metal graphics API. This, of course, contributes to 3D graphics platform fragmentation which makes it harder and more expensive for software developers to write code and deploy it once to multiple operating systems and devices. The net result of that is less software choice. And on Apple’s minority share macOS platform, it has meant fewer games and professional 3D graphics applications than on Windows.
MORE: Apple Introduces Revolutionary New Macs with M1 Chip
The Khronos® Vulkan® Portability™ Initiative fights this fragmentation by encouraging and enabling layered implementations of subsets of Vulkan over Apple Metal, Microsoft DX12, and other APIs.
Khronos says that much of the initial interest in Vulkan portability has been centered on layering Vulkan functionality over Apple’s Metal API, as native Vulkan drivers are not permitted on macOS, iOS, or other Apple platforms.
There has been significant effort behind Vulkan Portability efforts for macOS, and there are multiple royalty-free, open-source Vulkan Portability implementations over Metal, including MoltenVK and gfx-portability. The former has recently added many new features, including support for Apple Silicon, Metal 3.0, Mac Catalyst, and more.
macOS SDK for Vulkan
As more developers use Vulkan Portability on Apple platforms the need to further improve associated development tools grows more urgent. LunarG, who develops and supports Vulkan open-source tooling, has previously ported the Vulkan SDK to macOS, enabling developers to build, run, and debug their Vulkan applications on Macs.
LunarG is now shipping Device Simulation (DevSim) and Validation layers for the Vulkan SDK on macOS in addition to Linux and Windows.