Targeting cross platform anything drives the cost up immediately.
Just building websites that work on different devices if the site is non-trivial i.e. SVG, WebGL etc the cost up because each platform you have to duplicate the QA phase. This week I spent 4 days tracking down an iOS bug in a WebForm. The company had to pay me 4 days worth of work, half of that was reproducing the bug reliably.
People make out this stuff is easy. It isn't and I am sorry but Linux users on Steam is like 1 or 2% the last time I checked. It just isn't worth the effort for most developers.
Have you actually tried to do this yourself? With anything? I feel like everyone in this thread is trying to back-seat drive without realizing the effort that is actually involved in supporting multiple platforms.
We’re an embedded gaming system (casino) and I make sure we have a platform abstraction layer (2 c++ files per platform), and any project we build can be made for any platform (even Haiku). The amount of threading issues you discover makes this exercise absolutely worth it. The platform files haven’t been touched for almost a decade, write once (a week) and use forever.
We have and our software is better for it. Most of the stories about multiplatform being 'more expensive' or 'harder' are from corner-cutting devs and orgs.
It's nice to think that shipping a bunch of stacked hacks and making some money to then just get closed down/bought/retargeted is the 'happy flow' but unless you don't know any better you may want to diversify and find a job or project that has actual quality as a standard. I know that in late-stage capitalism with minmaxing in the mix that is hard to find in some countries, but it exists plenty if you go look for it.
I don't know much about macOS development, but I am a linux developer by trade. Can you elaborate further on how linux doesn't do long-term healthy platform maintenance?
I also don't understand how long-term maintenance can be a factor when games don't run correctly on launch day. I would appreciate an explanation for this as well.
However, the number of available titles on Linux/Mac is small, so you become a big fish in small pond and take all the users money. Piracy on OSX is smaller, and they are typically wealthier and starving for content.
Maybe flip that around: iOS and macOS sales (even if just via the 'store') seem to be plenty for developers and complete studios to build entire businesses on or at the very least invest and get a functional ROI for a business to run on.
If that works, then what do those developers on the other 'stores' do that makes it so hard? Almost all games are effectively assets + scripts executed by a portable runtime. The only reason you might get in to trouble using that portable runtime effectively is when you start hacking on that level and reducing the portability to a point where it no longer works. That's a choice, not an inevitability. As a bonus (like posted earlier); in software engineering you get to discover a lot of issues by writing abstractions (to support portability) that you otherwise wouldn't be able to catch ahead of time. And no, day-1 patches are not the solution, they are the symptom of the problem.
The Unreal engine supports Linux as much as MacOS and Windows
I could only imagine a minor(or somewhat major) code change to rely less on platform specific things and and add support for other e.g. audio backends
And he'll Id argue that Linux users are less likely to contact support duo to requiring some amount of knowledge of their system
You're making it sound like non-Windows users are paying less, when in fact, they're paying the exact same amount as Windows users. There's really no need to demonize macOS or Linux users.