Hacker News new | past | comments | ask | show | jobs | submit login

Curious - how come so many engines don’t support Mac? I am constantly baffled by how few games exist for my MacBook Pro.



Apple is extremely developer hostile so it's not that surprising.


Apple is extremely friendly to developers targeting the Apple ecosytem.

Unreal and Unity do support Apple devices.

Plus, unlike Android, they actually provide tons of tooling for game development and graphics programming on iOS.

Google tells you to clone github repository from Vulkans shaderc.


> Apple is extremely friendly to developers targeting the Apple ecosystem.

Yeah, I don't know where the hell you get that!

Do they offer emulators for non-Mac developers to target their ecosystem?

Do they make even simple development onerous if you are on a Mac and do target their system, but have the audacity to want to share the app with someone else not in the same room with you?

You want to make a free app for your business targeting our ecosystem? Pay us bitch! Also, while we're at it, pay us every year from now on! Whoa! You also want to put it on our store, pay some more you fucking pay-pig!

> Plus, unlike Android, they actually provide tons of tooling for game development and graphics programming on iOS.

... read, we are so locked into and starved for hardware options that it is easy to release a few libraries that will work for your app ... for now! Has your business not changed at all and your app doesn't need any special privileges ... but it has been more than a few years .. haha! Go fuck yourself, sincerely Apple!

> Google tells you to clone github repository from Vulkans shaderc.

Apple makes you get into a personal relationship with them. I am not sure that is much better!


Does Microsoft, Sony, Nintendo offer the same?

The lack of personal relationship with GNU/Linux offering is what made it fail the desktop adoption.


> Does Microsoft, Sony, Nintendo offer the same?

"Whataboutism" is the last gasp of a losing argument.

> The lack of personal relationship with GNU/Linux offering is what made it fail the desktop adoption.

This is just ridiculous.


Apple's developer hostile in general.

They create a narrow space where it's possible to make money developing for their platform, but there's a huge risk that:

a) they will make a decision which makes your product no longer viable, or

b) they will decide to replicate your product as a 1st party offering and render you redundant (e.g. tile)

Adopting open standards like Vulkan would be the single best thing they could do to support games on their platform. Games are extremely high-investment, and having to develop against a second back-end like Metal is a perfect reason not to support a platform.

Apple's friendly to developers as long as they are willing to stay on the reservation, but there is no reward for doing so.


I might be wrong but from what i read on the internet, MacOS don't provide direct access to GPUs, you have to go through the OS GPU API to do your GPU computation. On Windows and Linux, there is no abstraction, OpenGL and Vulkan access the GPUs directly. I'd say it's safer to go the MacOS way but it's a bother for those who want a unified API


You are wrong, there is no way to access the GPU directly unless you are the driver author.


Producing development tooling unmatched by FOSS is anything but hostile.

Want success with "developers friendly" tools? Try to make a business of using Khronos APIs in GNU/Linux games.

Ask Loki how well did it go.

As for Vulkan it is just the same design by committee extension spaghetti soup that killed OpenGL, just with even more boilerplate.


Doom 2016/Eternal shipped with Vulkan and they are two of the best optimized games ever made.

I don't buy that Vulkan is not a first-class choice for graphics. To the extent that it has issues, it's only because of (developer hostile) lack of support from major software vendors.


Pity that outside Android 10+ and a couple to Swift ports, most AAA studios don't care.

Now that Microsoft owns Doom, let's see how long it holds its Vulkan implementation.


I don't see what this has to do with your argument


Just like yours doesn't.


Mine does.

> skohan: failing to support open standards is not developer friendly

> pjmlp: closed standards are developer friendly, because Vulkan is inadequate.

> skohan: Vulkan is provably adequate

> pjmlp: Microsoft will use its cash advantage to prevent the successful use of open standards, and is therefore developer friendly???


Forcing me to pay a dev fee for the privilege of releasing software on their ecosystem is not friendly.

Foring me to get apple hardware by discouraging MacOS virtual machines is not friendly to developers.

Policing what apps people are even allowed to develop on some of their platforms (ie, no custom browser engines on ios) is not friendly to developers.

Deprecating support for opengl to push metal, a solution which is only available on their platform is not developer friendly.


I spend more on eating out in a week than that yearly Apple developer fee (not ideal, I know). Cost/benefit. At some point you realize you're going to die and that you can essentially buy more productive time by paying money.


Most people starts out as students or similar with basically no budget at all. To them paying fees to just get others to run your program is a huge hindrance, which is why it is developer hostile. It isn't hostile to full time developers who work on established products, no, but it is hostile to the next generation of developers who are just starting out and experimenting with things.


There are plenty of options to learn when one is on a short budget.

Everyone above 40 managed to do it back when commercial tooling was the only option.

The best thing about GPL hate is that freebies devs will learn to finally start paying again for their tooling, just like in other professions.


Apple is not for hippie developers, is for developers that want to make money and understand others like to be paid for their work.

Enjoy the developer friendliness of Steam on GNU/Linux.


Forcing you to drop everything and do it Apple's way is not friendly.

Forcing you to buy specific hardware and banning virtualization to do builds is not friendly. Cloud builds is a huge pain. You essentially have to rent full macs from MacStadium.


Last time I checked one was forced to buy PCs to develop for Windows, buying Android phones to develop for Android,....


You can compile Windows and Android apps on Macs, Windows, CromeOS and Linux. There's no XCode like restriction and there's not the same OS virtualization restriction that required a hardware purchase.


Yeah, I can develop and test for both platforms on a machine with Linux installed so your whataboutism is both disingenuous and factually incorrect.


It's a chicken/egg problem. There are no games on Mac because nobody plays games on Mac, and nobody plays games on Mac because there are no games on Mac.

Only Apple has the power to break this cycle by throwing money at game developers to reduce the financial risk (same way Epic does to get games into the Epic Game Store for instance).


They're kind of trying to do that with Apple Arcade, but from what I've seen they don't really understand the market enough to make an interesting offering.

It's insane to me that they're failing so badly at it: Apple's amazing at building brands, but gaming is huge with people under 30, and it might get harder to sell people a computer you can't run AAA games on.

Google could have eaten iPhone's lunch with gen Z with Stadia if they invested in it properly, but they didn't manage to make it work


It's not a chicken and egg problem. It's Apples fault/intention.

They had really bad support for OpenGL and wanted developers to use Apple's Metal API. But developers stayed on DirectX (Windows-only) or OpenGL/Vulkan for Linux/Windows/Android crossplatform. It just wasn't economically viable to develop for Mac.


The importance of cross-platform 3D-APIs for game development is vastly overrated though. The problems of the Mac as gaming platform are much more "holistic" (but yes, in the end it's about the economical viability).


You can use opengl or vulkan and target every platform, except mac. A very old version of opengl still works on mac but its not supported any more.


The way I see it, unless you're developing exclusively for Apple platforms, it's not worth the effort to build something with Metal. There are translation layers like MoltenVK that can help, but that still requires a lot of effort for what is likely a very small market segment.


It's not that hard. With SDL2/GLFW and MoltenVK you are 90% of the way to a cross-platform codebase.

That said I can understand why there's not a lot of investment in mac, since Apple's shown to be very developer-hostile as far as games, and the market is pretty small outside of mobile games which are kind of a separate thing.

There's some potential with m-series processors - now there's basically one SOC to target for everything from an iPad to a desktop, so it's sort of like consoles where there's a very consistent hardware target to develop against.


As I wrote in a sibling comment, Unreal and Unity do support Apple devices.

Plus, unlike Android, they actually provide tons of tooling for game development and graphics programming on iOS.

Google tells you to clone github repository from Vulkan's shaderc.

Vulkan and OpenGL tooling on Android is a joke, to the point Unity are Unreal the official tools.

https://developer.android.com/games#develop-content

While Macs have all of this at their disposal,

https://developer.apple.com/wwdc21/sessions/?q=Metal

The only thing Android Games SDK has is a frame pacing API!?!

https://developer.android.com/games/sdk


I don't understand how you can respond with how great Apple dev is when the question was why does no one do it. If its so great, what's the problem?


No problem, plenty of people that actually work in commercial games do it.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: