At WWDC last week, most of the focus was rightfully on the new Apple Vision Pro headset and the new visionOS. Apple announced three new Macs — the 15-inch MacBook Air, M2 Max/Ultra Mac Studio, and M2 Ultra Mac Pro — but mostly breezed past macOS Sonoma and its “new” desktop widgets. Cool, 2005 and Mac OS X 10.4 Tiger would like to remind you that we’ve seen this film before.
But buried in the keynote was a macOS feature that Apple should have called out with more fanfare: DirectX 12 support for macOS. As PC gamers already know, this software support means the floodgates are open for some real games — not that casual Apple Arcade stuff — on Mac. Maybe, just maybe, this is the beginning of the end to the old joke that Macs can't play AAA games.
A New Hope Hidden in Plain Sight
It turns out that Apple added DirectX 12 support via something it is calling the Game Porting Toolkit, a tool Apple is offering to developers to see how their existing x86 DirectX 12 games work on Macs powered by Apple silicon. That toolkit largely takes place as a 20,000 line of code patch to Wine, a compatibility layer designed to bring support for Windows games to platforms such as Linux, BSD, and macOS. Wine, which is primarily supported by the company CodeWeavers (which also makes a commercial version called CrossOver), works by converting system calls made to Windows APIs into calls that can be used by other operating systems. It isn’t emulation, but translation (an important semantic difference).
Although Wine (and CrossOver) have existed as a way to bring PC games to the Mac for quite some time, the Apple silicon transition has been difficult on the project. Rosetta 2, the compatibility layer built into macOS to seamlessly convert x86 macOS APIs (Intel) into ARM64 macOS APIs (Apple silicon), works with Wine/CrossOver, but the performance impact of translating one system call to another on top of a compatibility layer that is designed to translate one architecture type to another is not insignificant.
DirectX 12 support within the Game Porting Toolkit skips right over all of these translations. With zero need to modify any game code, games such as Grand Theft Auto V, Diablo IV, Cyberpunk 2077, and Hogwart’s Legacy can now run on Apple silicon Macs almost as if they’re native. Naturally (and quicker than anyone expected), enthusiasts and game developers started to try out the new toolkit. YouTube videos, Reddit posts, and Mac gaming wikis have been busy showing off some truly remarkable results on machines that just days earlier, were utterly unable to play AAA titles.
On an M2 Max, Diablo IV runs at close to 90 fps on “ultra” settings at its default resolution on a 14-inch MacBook Pro. On an M1 Max MacBook Pro, the title manages close to 60 fps at 1080p. This is more than playable, but for comparison, on a modern x86 CPU and an Nvidia GeForce RTX 4080, Diablo IV can run at 90 fps at 4K in “ultra.” Cyberpunk 2077 manages around 35 fps in “low” or “medium” settings on a 16-inch M1 Pro MacBook Pro, which again is playable, but not comparable to what you can get on a machine with a dedicated GPU.
Even better, the indie developer community started to take on ways to make it easier for non-developers to use the Game Porting Toolkit, with utilities such as Whisky, the Heroic Game Launcher, and various tutorials.
Although the performance of the games using the toolkit varies based on the title and the power of the system being used (M1 chips found in the 13-inch MacBook Air and MacBook Pro don’t fare as well as M2 Max or M1 Ultra chips found in newer machines, the upcoming M2 Ultra chip should have even better results), it is clear that the engineers at Apple have tested some of the most popular games with this toolkit on a variety of devices.
Apple’s hope is that developers will use the Game Porting Toolkit as a jumping-off point to optimize the game code and shaders to make the experience really work for Mac gamers. The unsaid (but very clear insinuation) would be for those developers or studios to then submit the newly “converted” titles to the Mac App Store, where Apple enjoys a 30 percent revenue cut. And sure, some studios and developers may choose to do just that, depending on the work involved and the potential for the user base. But even without that, this new technology, wrapped in a developer toolkit, is the best thing to happen to the Mac gaming market in at least 30 years.
The Long, Sad Journey of Gaming on the Mac
For over three decades, Apple has fought against the truism that although Macs might be best-in-class for video editing, graphics, and design work, if you want to play AAA games, you need to use a PC (usually running Windows). This isn’t (strictly) because of disinterest; Apple’s history is littered with attempts to make desktop Mac gaming a “thing” (the Pippin, stands out as a particularly brutal failure). Still, nothing has worked.
In 2006, Apple switched from PowerPC to Intel processors, giving the steadfastly loyal and fervent (if small) Mac gaming community hope that the x86 architecture would make it easier for game studios and publishers to bring their games to the platform. It didn’t work. The lack of native gaming engines and developer tools left most would-be Mac gamers to use Boot Camp, the system tool that made it easy to install Windows on an Intel Mac. Steam, the most popular digital distribution marketplace for desktop games, didn’t even get Mac support until 2010.
Ironically, Apple has found immense gaming success — but on mobile. Still, attempts to leverage success in the mobile and casual game market and buoy the Mac, using technologies such as Metal, just haven’t worked. It probably doesn’t help that Apple spent the better part of two years locked in a legal battle with Epic, the makers of Unreal Engine and a little game called Fortnite.
Every year it seems, we’d get another WWDC where Apple would tout that now was finally the time for gaming on the Mac. And every year we’d see a much-hyped demo of a four-year-old title running about as well as it would on a last-generation console. This year was no different, with an appearance by Hideo Kojima and the news that Death Standing: Director’s Cut was coming to the Mac, along with the pre-announced ports of No Man’s Sky and Stray. And despite the appeal to developers, the games never arrive in large quantities.
Instead, Apple’s requirements that game developers use its tools (which were more brittle and less powerful than what is available on Windows) and the smaller user base left many publishers and studios to just abandon the Mac entirely.
An Alternative Pathway
In some ways, the fate of Mac gaming mirrored another desktop platform: Linux. Like the Mac, and in spite of a very vocal contingent of users, Linux gaming largely remained largely elusive until Valve introduced Proton in 2018, a way to play Windows games on its Linux Steam client and on its Linux distribution SteamOS (which at the time, was primarily used for its failed Steam Machine devices). And notably, the open-source technology at the heart of Proton, is the same technology that Apple is using for its Game Porting Toolkit.
Valve committed major resources to making Proton work with a wide array of Windows games on Steam. Initially, even Linux gamers were skeptical about the potential, with many still wanting game developers and studios to focus on doing native ports instead of using the Proton compatibility layer. But as development improved, it became clear that performance of Windows-native games on Linux was often as good (and sometimes even better) than that of Linux-native ports.
When Valve announced the Steam Deck in 2021, the rationale behind Proton became clear.
The Steam Deck was powered by a newly updated version of SteamOS and Proton had been continuously updated and patched to work with a growing array of games. This meant that for those of us lucky enough to get our Steam Decks in the spring of 2022, a huge variety of Windows games would “just work” on our devices. And because the technology is open source, games installed from GOG, Epic, or as traditional Windows binaries, would often work too.
Over the last 18 months, the homebrew Proton enthusiast community has made its own patches, fastidiously updated wikis, and created alternative front-ends not just for SteamOS and the Steam Deck, but traditional Linux desktop users too.
This is my hope for Mac gaming. In an ideal world, Apple would be in talks with Valve to bring the Apple Game Porting Toolkit to the Apple silicon macOS version of Steam (I am not as hopeful that Apple will bring it to the Epic Gaming Store) and that it will actively work to update the toolkit to support more games and even add-in patches when necessary.
But even if that doesn’t happen and this remains an enthusiast play (but with tools that will surely get easier to use and manage as time goes on), DirectX 12 support is still the most exciting development Mac gamers have had in years.