Hacker News new | ask | show | jobs
by solardev 1366 days ago
Yeah, but there's also a reason why you can still run most Windows 95-era apps on today's PCs, vs not being able to run most 2-year-old games on M1 Macs. Rosetta is pretty amazing but it's far from actual compatibility.

Apple's approach to backward compatibility is very different from Microsoft's.

It's not uniquely a Microsoft thing, either. Nvidia's driver updates frequently (in fact almost always) have game-specific optimizations. Antivirus and firewall apps frequently have to make exceptions for certain apps. WINE and Proton operate on per-game optimizations. Input controller managers (like Steam's profiles) have different settings per game. DirectX itself does a lot of backward compatibility stuff, AND allow different versions to coexist on the same PC (vs the relatively tiny market that exists for Metal or Vulkan).

All these things contribute to PC gaming vastly outselling the tiny Mac gaming market. As a Mac user, I wish that weren't so! But MS's approach is way better for devs and users in that case, even at the cost of the Windows APIs and libs being huge with a decades-long tail.

1 comments

As a user of a current ARM MacBook Pro 16 inch and a former x86 MacBook Pro, being able to have a battery that last 20 hours, doesn’t get hot, nor does it sound like a 747 when I launch Slack, I very much appreciate Apple being able to transition processors.

Also seeing that the iOS game market dwarfs the PC game market in revenue and number of titles (if not quality), I think Apple made the right choice.

Microsoft has been unsuccessful trying to get Windows on ARM to be viable for years before Apple did it and has failed partially because of the behemoth that Windows is.

Speaking of Windows and backwards compatibility. There are at least 8 different ways to define a string in Windows depending on which API you are calling. String handling in C is one of the biggest causes of security vulnerabilities on any platform.

https://learn.microsoft.com/en-us/cpp/text/how-to-convert-be...

I love my Macbook too, and am hoping it revitalizes the dead OSX games industry. But its lack of backward compatibility further hurts its gaming capabilities vs the already-limited x86 OSX games. It's nice when it does work and you have some M1-native titles (Baldur's Gate, etc.) but those are far and few in between. Sure, it's a great business machine, it's just not a gamer's laptop (even though its hardware is fully capable). I use my M1 for most things, but still have to use Windows x86 for actual gaming.

Yes, Windows's backward compatibility carries a high cost. Nobody doubts that. But as a gamer, I would rather to be able to play games on a shitty OS than to have the latest, most vertically integrated all-in-one chip and stellar OS and be limited to a library of like 15 five-year-old titles.

As for the "right choice", eh, maybe from a business angle... but as a gamer, iOS games suck. They probably have that revenue mostly from lootboxes, not actual gameplay. I don't know that Apple should be applauded for turning video gaming into online gambling. That's not really a hardware/OS stack question anyway though, but a business decision. And to be fair, many of the actually curated titles (like the ones on Apple Arcade) are pretty decent -- though nothing close to the thriving indie scene on Steam/x86 Windows.

iOS is more like a console in that they're creating a new market segment, not necessarily competing with traditional PC gaming (which has taken a turn for the worse by adopting mobile lootboxes and such). On the other hand, OSX and Linux both tried the purist gaming route with their own APIs and got nowhere. It took WINE and Proton to really make the Steam Deck a viable platform (and barely that).

Do I like this situation? No, I'd rather just have games be properly cross-platform to begin with. I don't really understand how cross-platform works in Unreal and Unity, but if those engines can add native Apple Silicon support and make it easy for publishers to cross-publish, hopefully we'll see Macs on future titles alongside PC/PS/Xbox/Switch. Till then...

Look at where the mobile gaming revenue is today:

https://www.giffgaff.com/blog/mobile-gaming-overtakes-pc-and...

On top of that, you can carve out the percentage of “PC Gaming” that is “browser based” since you can run those on a Mac. The industry is moving toward browser based streaming games.

https://www.marketdataforecast.com/market-reports/game-strea...

Re: mobile, didn't I address that in my post? Sure, mobile gaming might be bigger by revenue, but it's not really an "overtaking" as much as growing a new market, as far as I can tell. Most of the games are totally different -- casual gambling vs the high-skill or deeply strategic games on PC (and to an extent, console).

There's nothing wrong with iOS (and mobile in general) having its own game ecosystem, but it's distinctly different from PC and console games. May I ask whether you're familiar with those ecosystems, like do you actually play on both? It's one thing to look at it from a pure dollars & business standpoint, but from the eyes of actual players, they're pretty different landscapes. Even among cross-platform franchises, there's a pretty big difference between (say) Diablo Immortal and Diablo 2/3. Once in a while there are actual cross-platform titles that are largely the same game (Fortnite, PUBG, etc.) but those aren't super common yet.

What I'm trying to say is that there is a huge library of existing and upcoming WinTel/x86 games that depend on Windows (and to a large extent, Steam) -- both because of architectural reasons but also other "cultural" reasons, like preferring mouse + keyboard input vs the touchscreen, or having a large screen for UI real estate (especially for strategy games).

Apple does not care about that segment. To be sure, they don't need to, between iOS revenue and their other income streams. It just saddens me because it means I'll have to keep a spare Windows PC lying around just to feed that habit, when the M1/M2 hardware is totally capable of playing those titles IF either they were ported (puts the onus on each game developer, especially hard for small indie studios) OR if Apple had better backward compatibility (some games will work with Rosetta, thankfully, but only if there was an OSX x86 port -- many don't even have that). Otherwise, ironically, that sort of gaming is better on Linux, despite its worse drivers and complex distributions, because of efforts like Proton that make per-game compatibility layers. Because the community took the time to implement backward compatibility with older APIs, choosing to support games rather than aiming for ideological purity.

Apple chose the other approach, and that may be fine for them as a business, it just sucks for us as gamers.

-------

As for streaming, yes, it's a great technology, but not a surefire fix. I've been using them for more than a decade, from OnLive to PSNow to Shadow to GeForce Now to xCloud, on everything from phones to gigabit fiber. They're wonderful technologies, but suffer many issues:

1) latency & bandwidth issues unless you're on a good and consistent connection, and LTE/5G isn't quite powerful enough to really make it reliable, WiFi is a mixed bag

2) no mods support yet since most services haven't virtualized that part of the filesystem yet, Shadow being the exception

3) graphics are middle of the road. Sure, it might be rendered on a RTX rig, but compression artifacts and jitter will frequently impact your experience

4) this is a big one: for some reason, publishers are constantly pulling their titles OFF of these services, and GeForce Now lost a bunch of AAA titles since it launched. Sometimes they reappear on some other streaming service, but not always.

5) the game streaming landscape is very quickly fragmenting, with games split between Xbox Game Pass, PSNow, GeForce Now, Luna, etc... it looks like they're trying to go for the streaming video model, with a subscription for each publisher (sadly) so you'll end up with a bunch of different subscriptions instead of being able to just rent a virtual rig by the hour/month and play all the games

-----

Look, I'm nobody, and I can't force Apple to care about PC gaming. I'm sure somebody there did the math and figured it wasn't worth it... especially because we're an audience that's very demanding in terms of power and customizability, and would probably be a PITA for them to support. Shrug. I just hope Apple Silicon sells enough that publishers will start porting games over on their own accord, and maybe ten years from now nobody will be making WinTel games anymore, and all the titles will seamlessly transition from the laptop to the watch, whatever. We're just not there yet.

I’m saying basically that Apple knows where the money is. The desktop market is already a small market in the grand scheme of things. The desktop PC gamer market is even smaller.

The PC gaming market is a 28.6B a year market for software sells. The actual hardware sales have to be much smaller to the point where it would be even lower than that. Definitely not worth Apple sacrificing being able to move fast.

Yes... nobody is doubting that. It just sucks for us.