Previously: DirectX -> Proton/WINE -> Vulkan -> MoltenVK -> Metal (yuck)
Now: DirectX -> Apple GPT (groan at my pun, Game Porting Toolkit) -> Metal
You could call it Proton with a Metal backend and more developer tools?
Previously: DirectX -> Proton/WINE -> Vulkan -> MoltenVK -> Metal (yuck)
Now: DirectX -> Apple GPT (groan at my pun, Game Porting Toolkit) -> Metal
You could call it Proton with a Metal backend and more developer tools?
It's all good stuff, though. One of the big reasons I switched to Linux was how smooth the DirectX translation is. If Apple makes an effort to support a back catalog of DX9 titles and fairly decent DX12 coverage, that's enough to put them back on the map for me.
This is a Developer tool to help developers figure out what it’s going to take to port their games to the Mac.
End-users don’t get to use it. You can’t bundle it with your game. The license forbids it.
It’s very interesting, and I’m sure the community will make the best use of it they can, but it isn’t designed to be the Mac Proton.
By running them on a DX12 translation layer that they can't utilise? What would be the use case then?
At least this was the messaging in their talk about this: first you had to work months on a port to see how well a game would work on Mac hardware, now you can immediately run it, investigate bottlenecks and see where a port would land performance-wise before putting in any of the work.
I wonder if they will make the D3DMetal usable from native code as well, I can imagine that would make porting much easier:
- First you run on Wine + D3DMetal to get idea if your game would run well enough on Apple hardware at all.
- Then you start building the game natively, still using D3DMetal, so that you don't have to immediately port the graphics stuff.
- Once you have a running game on top of D3DMetal, you start porting it over to Metal with their shader converters, etc.
Of course if Vulkan was a suppoted API on macOS, developers could just port to Vulkan on Windows and then implement the rest on macOS.
Also, whenever the Direct3D API changes, they would have to follow. That makes them dependent on Microsoft and means they’d always lag them.
Because of that, I don’t see them open this up.
Another factor is that major GPU companies put efforts into rewriting some games' shaders to make them run better on their hardware. I doubt Apple is going to do that so you'll probably end up with games performing better on other platforms soon after release.
There's more to getting games to run smoothly on a platform than compatibility software. So far, the GPU has been lacking despite Apple's attempts to hype up gaming for mac. With the rate things are going, the year of gaming on Mac may be the same as the mythical year of the Linux desktop: inching ever closer but never really arriving.
Butthurt mac users that don't like to think their toy is worse somehow, obviously.