Ask HN: Does Apple secretly want to prevent gaming on macOS?
I can't believe this, but compared to Linux, macOS actually provides worse gaming experience (at least for me). On Linux you have Proton to help with Windows games, but it cannot run natively on macOS due to macOS missing several APIs:
- eventfd syscall is Linux-specific, without good alternative on macOS
- Apple does not support Vulkan, which is needed for DXVK
- Apple deprecated OpenGL support, which is needed for WineD3D
- macOS is missing support for Python 3 OOTB
- etc.
It just looks as if they _want_ to avoid success at all costs. Is there any reason that a megacorp would make such decisions?
78 comments
[ 3.0 ms ] story [ 172 ms ] threadApple's game developers are iOS and Apple Arcade developers, and they are the ones that Apple is encouraging to make games for macOS.
> MoltenVK is a Vulkan Portability implementation. It layers a subset of the high-performance, industry-standard Vulkan graphics and compute API over Apple's Metal graphics framework, enabling Vulkan applications to run on macOS, iOS and tvOS.
—-
[0]: https://github.com/KhronosGroup/MoltenVK
Which we wouldn't need if Apple would just simply support Vulkan.
To my surprise, a significant portion of my Steam library works out of box in Linux.
Disclaimer: I don't play many AAA games.
Apple doesn't have any incentive for gaming on macOS. They already make a large amount of gaming revenue from the app store. Gamers on macos would likely buy from steam anyway. And they aren't going to sell many more macs just because the gaming support is a little better.
It's not that Apple doesn't want games on macOS—they do. Now that nearly their entire product line is running on Apple Silicon with their GPUs, Metal is the best way to write game code that can run on Macs, iPads and iPhones.
From their press release [2]:
Metal 3 — the latest version of Apple’s graphics framework — comes with new features that enable game developers to tap into the power of Apple silicon for even greater gaming performance. MetalFX Upscaling enables developers to quickly render complex scenes by using less compute-intensive frames, and then apply high-quality spatial upscaling and temporal anti-aliasing. The result is accelerated performance that makes games feel more responsive and graphics that look stunning. Game developers also benefit from a new Fast Resource Loading API that minimizes wait time by providing a more direct path from storage to the GPU, so games can easily access high-quality textures and geometry needed to create expansive worlds for realistic and immersive gameplay.
Game developers that integrate with Game Center can now add Activity views into the dashboard, making it possible for their users to see which games their friends are playing and their high scores. And with SharePlay support, it’s easier than ever for users to play together in real time.
[1]: https://youtu.be/q5D55G7Ejs8?t=4867
[2]: https://www.apple.com/newsroom/2022/06/apple-provides-develo...
This is true: but Apple also shot themselves in the foot here. My understanding is that Apple Silicon GPU cores are designed differently from traditional PC/console hardware, and closer resembles a phone's instruction pipeline. So, yes, Metal will inherantly optimize for it better, but Apple also deliberately chose to go in the opposite direction of the gaming industry. Expecting developers to drop everything to optimize for a platform that will represent a fraction of their sales (minus 30% of course) is pretty unreasonable, and I think Apple knows this (and concedes here). Metal is not made for meticulously optimized gaming releases, it's a high-level interface designed for mobile-first applications.
But the last 30 years of PC gaming hasn't been optimized for ARM and tile-shading. And likely, anything in the near future targeting PC or home console isn't either. So, whether or not Apple's hardware is up to the task is irrelevant: their architecture and software stack isn't ready for cross-platform development. Apple dug their moat, now everyone has to deal with it.
The same thing has been said about Apple over and over throughout the years. Apple plays the long game. If they want to get more involved in gaming, it's built into their roadmap, and we'll see it manifest itself in the coming years.
I don't think macOS market share is the right fraction to look at. As iOS and iPadOS continue to evolve, they will continue to eat the PC market, and more and more games will be released mobile-first. Building for those devices is far more lucrative.
I personally think the Apple TV is the dark horse here. All Apple needs to do is release a next-gen Apple TV that has enough horsepower to run current-gen games, and suddenly Apple is competing in the console market.
Investing the time to optimize for Metal will give devs access to far more than just the Mac market.
And it hasn't really been wrong? Try booting up any Mac game from the 2010s on Apple Silicon; there's a 90% chance it depends on a 32-bit library Apple won't give you anymore. MacOS just hasn't proven to be a great platform for game development, and that's fuelled by Apple's constant desire for constant architectural reform and perpetual yak-shaving. That's fine, and it works well for some applications, but it makes for a pretty lousy target for gamedev.
Apple plays with their cards held to their chest, so I agree with you that they're playing the long game. They already own the casual gaming market (and profit handsomely from it), and they seem perfectly satisfied to ignore everything else. Long-term though, I don't see how Apple can make any of their devices attractive gaming consoles without bringing a legacy of PC/console titles with it. I guess all that remains to be seen, though.
> I personally think the Apple TV is the dark horse here. All Apple needs to do is release a next-gen Apple TV that has enough horsepower to run current-gen games, and suddenly Apple is competing in the console market.
That's a fairly grounded argument, but I still don't see a carrot at the end of the stick for game developers here. Sure, casual games will be easy to port, and what few native MacOS titles remain will be easy enough too, but why would studios like EA or Ubisoft port their games? Why would indie productions with limited time dedicate resources to ensuring Metal compatibility? I see no appeal, and I bet Apple knows that it's a pretty raw deal too. It will be interesting to see if they respond to this.
> Investing the time to optimize for Metal will give devs access to far more than just the Mac market.
You're right, but all of this hinges on whether or not developers want to pay the Apple tax and deal with the constantly changing ecosystem. That comes at a cost, one that's greater than dumping a game on PC or releasing a title for a console. Maybe the scales are turning in Apple's favor, but the momentum of the current gaming ecosystem seems to not care.
The funny thing is... you know what does work on Apple Silicon? Wine, using 64-bit Windows binaries, DXVK, and a Vulkan to Metal wrapper. Don't expect stunning results on a just-released title like Elden Ring, but there's a project called XIV on Mac for an old title, FF14, that has at least proved to me that it can be done.
32-bit games have terrible performance because 32-bit support has had to be reimplemented in Wine.
DirectX 12 games (such as Elden Ring) don’t even boot, and likely won’t run at all for another year or two. Metal has been missing major functionality utilized by the vast majority of DirectX 12 games such as Elden Ring. The Metal 3 improvements announced the other week should go a long way towards making this actually possible, though.
I don’t know what the rate for console game releases, but I don’t think I’ve ever heard someone say it was less than Apple’s take. So if the Apple tax was a problem, there wouldn’t be any console games.
Apple has had less success in gaming with more effort than even Google stadia
They do, just the casual gaming market. Which is gaming. They don’t do all gaming, but nobody does.
Capcom must have their reasons, and it would be interesting to know what they are. Perhaps they were already targeting iOS. Or perhaps Apple paid them to make a macOS version. Or perhaps they're just experimenting to see whether making a macOS game is worth it.
Realistically though Apple has tons of game developers already, including well-known companies like Capcom, on iOS.
The path of least resistance is not convincing Windows game developers to develop for macOS (this is a losing battle as you note), but to make it as easy as possible for iOS game developers to flip a switch and get additional sales on macOS.
Vulkan runs just fine on phones. MoltenVk on macOS sometimes runs things faster than the native Metal port since the Vulkan port is likely to be far better optimized.
Vulkan, Metal, and DirectX 12 have pretty much converged to roughly the same architecture.
Apple could switch to Vulkan. Valve has already demonstrated this by funding MoltenVK.
Apple chooses not to play nice. This is 100% purely the fault of Apple.
A 2.2T company doesn't usually do that. It's all about the lock-in they get with Metal games that won't run on non-Apple hardware. And incentivizing PC game devs to learn Metal to target Macs and eventually iOS where they take 30% of all gaming revenue. They don't give a crap about Mac users being able to run new or old games because they make no money from it.
There's also probably both NIH and price problems with GPUs. They clearly want to go for full Apple Silicon designs, but they have no answer to today's high-end GPUs. Even if the brought a "Geforce killer" to market, they'd have an uphill battle of proving compatibility and earning trust (compare Intel Xe). So to be competitive, they'd have to offer an existing trusted premium GPU at least in the near term. That either means selling a normal Radeon or Geforce with little markup, or adding enough of an Apple Tax that it makes the whole endeavour uneconomical.
I am curious though if it has an impact on higher-margin sales. I could see people saying "I have a $2000 budget, and I want to play games as well as use MacOS... I can buy a fairly kitted out Mac that won't game, or I can buy the cheapest Mac Mini and a $1200 gaming PC to sit next to it."
Perhaps you missed this headline: "Apple earns more from gaming than Sony, Nintendo, Microsoft, Activision combined" [1].
Like someone posted, Apple plays the long game; the economics are making it so that if you're a game developer, you have to deal with Apple, like it or not.
[1]: https://appleinsider.com/articles/21/10/03/apple-earned-more...
Forget the software. Why would any gamer want to buy expensive hardware that cannot be customized/upgraded after delivery?
Personally I'm happy that there's an Epic Game Store for macOS, but clearly it's not where Apple's bread is buttered.
Console platforms are generally highly consistent throughout their lifetimes (although recent platforms have been doing more variants and mid-lifetime upgrades); if your game finishes a bit late, it will still work, and worst case you sell it for the previous generation even though a lot of people moved on or are planning to move on soon (low availability of latest gen makes a late previous gen game more viable though). If your game is late on macOS, there's a decent chance Apple will have changed APIs and you've got a lot of work to update. Releasing a game that only works on last year's macOS is not viable. Releasing a game that only works on last year's windows isn't great, but it's doable; and Microsoft tends not to break things so quickly; a game targetting DirectX N will almost always work on the OS that ships with DirectX N+1 as well.
Except that in terms of revenue, PC gaming brings in less money than console gaming, which brings in less money than mobile gaming.
Apple is already a big player in mobile gaming. Why would they spend a lot of money to compete in a smaller market where they have minimal market share, instead of expanding their already significant mobile market share?
They are doing the same for gaming on Mac's. Apple wants the 30% free rent-seeking money.
"Apple is not comfortable working under Khronos IP framework, because of dispute between Apple Legal & Khronos which is private. Can’t talk about the substance of this dispute. Can’t make any statement for Apple to agree to Khronos IP framework. So we’re discussing, what if we don’t fork? We can’t say whether we’re (Apple) happy with that."
Agenda / Minutes for GPU Web meeting 2019-12-09 https://docs.google.com/document/d/1F6ns6I3zs-2JL_dT9hOkX_25...
One reason is that you and Apple have different definitions of gaming success.
For you, gaming success means "running PC/Windows games well on macOS."
For Apple, gaming success means "making more money from gaming than Microsoft or Nintendo."
Guess which path they've taken?
Microsoft owns how many gaming properties and technolgy stacks at this point? Despite that, Apple beat all other companies to the $3T market valuation in January this year (AAPL at $2.2T, MSFT at $1.9T today).
I fail to see where Apple is "avoiding success" in this scenario. They have clearly shown that one need not appeal to the gamers to find success. Though I am a PC gamer, I kind of get it TBH. The variety of motherboards/GPUs/CPUs/APIs etc are kind of bewildering and having something that "just works" (or at least aspires to that goal) is appealing.
The reason is that Windows, unlike iOS, allows Steam, GoG etc. and non-Store games run on it without having to pay MS for the privilege. Imagine MS' market cap if it took 30% of all PC gaming revenue. And because it's impossible for Apple to take their 30% cut of all games, they ignore/deprioritize it and focus on making more money than try to provide more value to Mac users who want to game.
Microsoft essentially built the new era of PC gaming with DirectX back in the mid to late 90s, and that helped them sell more Windows licenses on home PCs.
https://en.wikipedia.org/wiki/DirectX#Development_history
Getting back to the mobile side, for which Microsoft never could decide on its strategy, I still don't see how one can say that Apple is "trying to fail" at gaming. They account for 15% of the mobile market, but generate 56% of the mobile game revenue (data from here: https://www.businessofapps.com/data/app-revenues/) . That just doesn't sound like anything resembling failure to me.
They don't think about providing extra value to the Mac users since they already got their money from the high margin hardware. It's their way or the highway.
It's sad because Jobs used to have game devs launch games that ran on the Mac during WWDC presentations. Maybe when Apple was doing badly financially it became a smaller priority. I'd like to think that if Jobs was around after Apple hit $1T market cap he'd have prioritized proving more value for Mac users with supporting gaming, but with a COO like Tim Cook at the helm(just like MS under Ballmer) it feels like it won't happen. It's nice to have technology/engineer CEOs that like to build technology for its sake instead of only looking for more money like MBA CEOs do. Especially technology companies sitting on 200 billion dollars in cash.
Um, they just gave a chunk of last week's WWDC keynote about Mac gaming: https://news.ycombinator.com/item?id=31719776
Was it just me or did all the gameplay demos except for Resident Evil look terrible?
As a happy multi-Apple-product user I can't help but feel disappointed every year when they promise console quality gaming but then each year the limited amount of games makes the power of the chips completely useless in the gaming realm. I mean, it feels like every year for the past three to four years at WWDC we see gameplay snippets of The Witcher 3, Divinity Original Sin 2 and Baldur's Gate 3. RE Village is a big one for sure, but there aren't many others.
It's especially infuriating that even back in 2018 (pre-M1) Apple was claiming the iPad Pro had console-quality specs[1] but there still aren't many games that you can buy that leverage those specs.
I would love to see more ports of old or current Triple A games to the iPad.
[1] https://www.gamespot.com/articles/apple-says-its-new-ipad-is...
Apple was literally $3 trillion worth recently. They already had OpenGL but they decided to deprecate it, so it's not as if they don't support it due to lack of resources.
If you want to be cynical, Apple wants devs to get locked into Apple's ecosystem by writing to Metal, in Swift, etc.
If you want to be generous, ports to Mac OS have traditionally been shit as the Mac is treated as second-class by devs. (I bought Kerbal Space Program off Steam for my Mac, returned it immediately — UI was so bad on the Mac, so un-Mac-like.)
I appreciate Mac ports of Windows games, but typically they arrive a year or more after the original game and are buggy and slow, creating a self-fulfilling prophecy that Macs aren't good for gaming.
Mac ports of iOS games are going to be much easier/faster to produce since they already run on Apple's APIs and GPUs, and are likely to have excellent performance and reliability running on macOS.
Perhaps this will create a new self-fulfilling prophecy that Macs are pretty good for playing iPad games.
Mac ports certainly suffer from this effect, but it’s hardly exclusive to them. Ports of console titles to Windows are frequently bemoaned due to some mix of extremely bad optimization, half-baked adaptation of controls to keyboard+mouse, and lack of updates (frequently, console ports to PC receive none).
Ports of games to the Nintendo Switch are also often bad, though in that platform’s case there’s a massive lack of hardware power that is one of the causes in many cases (the Switch is roughly equivalent to an Android phone from 2014-2016, with the CPU being on the older end of that and the GPU on the newer end). Even so, many Switch ports are exceedingly low-effort.
Apple Silicon complicates things further, though some x86 games are actually playable under Rosetta2.
The closest thing to Proton on macOS is CrossOver, but it's pretty limited atm.
Apple still considers Macbooks as trucks: they are for developers and professionals, not gamers or everyday users. They want non-developers to buy iPad and that is why there is no sub-$1000 MacBook.
Well, it's a little more complicated. The M1 MacBook Air now sells at $999; $899 for education. And you can drop more than $1000 on an iPad Pro with an M1 processor.
And you can run Swift Playgrounds on an iPad and submit an app to the App Store: https://9to5mac.com/2022/01/05/this-to-do-list-app-is-the-fi....
Something along those lines was the rationale I was given for GTK4 devs choosing to standardize on OpenGL despite prioritizing accelerated MacOS support.
It'd be nice to have more data points preferably from current Apple folks in this vein, since it's a constant factor to this day in deciding what GPU API to target when supporting the big three OSes. Maybe we're already at a point where webgpu makes the most sense?
iOS, on the other hand, is the most profitable segment of gaming. A developer is certainly much more likely to to target the platform where the money is, and it's no longer possible to target iOS without your game also working, unchanged, on an Apple Silicon Mac. (Although you should, at the very least, add support for game controllers, since iOS and Macs now support XBox, Playstation, and Nintendo controllers out of the box)
Adding traditional Mac UI application chrome and adding support for a mouse based UI (in addition to a gaming controller) is also a nice thing to do for Mac customers.
The strategy of leveraging the most profitable segment of gaming is the opposite of trying to avoid success.
There's a lot of odd history that goes into the Windows hegemony of the gaming industry, I'm sure, but that's lead to an industry that's built on desktops for the most part for non-console gaming. Even if Apple magically had even Linux-level support for games, I'm not sure how much that would ever raise their prospects in business or hardware sales, so it's a harder sell internally.
Taking the Wine/Proton emulation path that Linux has gone down also means that Apple would now be beholden to Microsoft not being screwy with them when it comes to how DirectX or the like gets developed in the future. I'm sure there's some calculation that if they started trying to be cross-compatible with something as complex as Windows' graphics APIs, it opens them up to MS intentionally breaking compatibility in the future just to ruin them. I know Linux devs have enough trouble with that already and MS almost definitely doesn't care about them.