Metal 2, Apple’s framework for accessing a device’s GPU via an API, is pretty special. It’s also the only path forward for developers who want to create games for macOS, as OpenGL and OpenCL are being deprecated in its favor. With the release of Metal 2 and macOS 10.14 Mojave, Apple is phasing out OpenGL and OpenCL. The OpenGL API accesses the device GPU, while the OpenCL framework taps into its CPU. Together, they pair to help developers create performant games. As Apple writes, OpenGL apps should use Metal moving forward, and those developers currently utilizing OpenCL should instead adopt Metal Performance Shaders. From Apple’s “What’s New in macOS” landing page:
Apps built using OpenGL and OpenCL will continue to run in macOS 10.14, but these legacy technologies are deprecated in macOS 10.14. Games and graphics-intensive apps that use OpenGL should now adopt Metal. Similarly, apps that use OpenCL for computational tasks should now adopt Metal and Metal Performance Shaders. Metal is designed from the ground up to provide the best access to the modern GPUs on iOS, macOS, and tvOS devices. Metal avoids the overhead inherent in legacy technologies and exposes the latest graphics processing functionality. Unified support for graphics and compute in Metal lets your apps efficiently utilize the latest rendering techniques.
This demand that developers move to Metal, while seemingly an attempt to bind tech pros to a proprietary technology, might prove a quiet attempt to expand gaming on the Mac as a whole. Gaming on the Mac has always been ‘limited,’ let's say, in part because of OpenGL. In a back-and-forth on Twitter, game developer Sam Loeschen reminded us that OpenGL is still common-core, but Metal is much more performant and easier to adapt to. As with OpenGL and OpenCL, 32-bit apps will continue to work in Mojave; Metal only works in 64-bit apps. These fates are aligned. At WWDC 2018, Apple revealed its plan to allow developers to bring iOS apps to macOS (codenamed 'Marzipan'). It’s not ‘porting’ per se, as Apple admits there’s a lot of overlapping features being handled by
AppKit on macOS and
UIKit on iOS devices. One cross-platform framework is Metal; both iOS and macOS games can utilize it. Apple's ‘Marzipan’ theorem for creating macOS and iOS apps and games rolls several iOS UIKit features into macOS to make the experience behaviorally more appealing. WWDC 2018 introduced News, Stocks, Voice Memos and the Home app as living examples of Marzipan’s promise. These are core services for Apple’s platforms, and it can be hard to see where this may lead for game developers right now. But it’s not difficult to identify an emerging trend. In switching from OpenGL and OpenCL to Metal, Apple is also encouraging game developers to reevaluate their strategy. The iOS App Store is still buoyed by games, which drive a lion’s share of revenue. The new Mac App Store has a dedicated 'Play' section devoted entirely to gaming. Any mobile title would work well on the desktop. Developers won’t even need to create clumsy keyboard shortcuts or decide which gaming mouse the support. A touchpad is adequate, and Apple’s subtly-great Touch Bar on MacBook Pros (which is easy to develop for) is begging for game controls. It’s not as clear-cut as a touchscreen, but it’s good. Further, Apple seems to be distancing itself from what many define as ‘PC gaming’ – at least for the new Mac App Store. While you can still use Steam for macOS, proper purchasable titles will need to support Metal in the near future. This appears to position macOS as a lighter gaming platform, which may see a spate of mobile titles once Apple makes its ‘Marzipan’ tooling widely available to developers. The platform lines might be blurring, but strokes defining which tools to use are becoming more clear. Moving forward, game developers will have to create with Metal, which makes iOS games far more powerful and allows macOS games to be as performant or light as desired. It also draws a tidy line around Apple’s platforms: you’re either in or you’re out, and the games you create should be the same across the desktop and mobile devices. The most recent data suggests users are downloading fewer games, but willing to spend on those they do end up getting. And if iOS App Store monetization figures are any indication for macOS gaming, success and profitability lie with Metal.