I would be a lot more okay with this if Apple supported Vulkan, the more portable comparable API, rather than just the macOS/iOS-only Metal.
I also wonder what means for WebGL and its future. Right now, WebGL works in browsers on macOS, Linux, Windows, iOS, Android, which is incredible. There is no equivalent.
Sure, Apple has started working on WebGPU, but that’s not yet ready nor is it guaranteed to gain Linux, Windows, Android support.
Apple has so little to gain over Vulkan by developing its own API but so much to lose by not adopting Vulkan (gaming companies may actually prefer developing games on the cross-platform Vulkan to target macOS/iOS devices, too, at the same time, instead of using DirectX).
Obsidian didn't manage to materialize a Khronos working group, so it's not moving forward. Apple instead went with the W3C to form the GPUWeb group, based on their work on WebGPU. The Obsidian folks at Mozilla have decided to follow this path instead, see here:
However, there's no real writeup of what the API will end up remotely looking like right now, so it's too early to speculate. WebGPU's original prototype used Metal's shading language for instance (since the prototype came from WebKit), but any real standard probably will probably change things up.
I believe the webgpu-servo folks have, in the mean time, begun working on lower level components/libraries to target Vulkan/DX12/Metal, for use by systems like WebGPU. Sort of like ANGLE by the Chrome team, but for newer GFX APIs.
TL;DR absolutely nothing is fleshed out at all yet and it seems plenty will probably change
Maybe Nadella will push for Vulkan support on Xbox, or maybe Xbox will die off, who knows. Unless one of those happens, DirectX is not going away. As soon as consoles come into the equation, you are stuck writing a PAL (or using an existing engine that already has one) because they use proprietary APIs and that's unlikely to change.
It's not ideal, but that's the reality. Apple is following the idiotic status quo, but it's not fair to single them out for it (that being said, at least Microsoft supports Vulkan and OGL on one of their platforms - but the 3rd-party driver developers are mostly responsible for the great support).
My bet is they spin the whole gaming division off or sell it to someone like Amazon. It’s not really a great fit anymore and IMO they need to be bolted to a company with a greater interest in the creative side of the business (i.e. running a movie/game studio) than Microsoft.
They don't have anything to loose regarding not adopting Vulkan, because all game engines that matter to professional game studios already added Metal support.
Same applies to Photoshop and other relevant 2D and video editing professional tooling.
Professional game studios always favored hardware specific APIs that allows them to extract all the juice up to the last drop.
For example, OpenGL ES 1.0 + Cg on the PS3 was an adoption failure, with everyone adopting the PS3 specific APIs.
Seconded. This seems like a major step back for x-platform GPGPU. I always just assumed a natural transition from GL, CL support to Vulkan would occur at some point, but this is just a shame.
Maybe there is no equivalent, but WebGL is not a mature technology. Webgl stuff still breaks or has performance bugs whenever some part of the OS/Browser/GPU Driver/GPU Hardware sandwich changes. You can run the conformance tests yourself.
I don't see how a technology can get to a mature status if a major hardware company decides to not support it. The real question is WHY don't they support it? Is there a webMetal?
All we know is that Apple was bankrolling a portion of OpenGL development on OSX and now they feel otherwise. OpenGL ARB is a committee and Apple has only one vote. Maybe they were not satisfied with the direction the spec was going. Its certainly not an unfounded belief.
>I don't see how a technology can get to a mature status if a major hardware company decides to not support it.
Alternate reading - They gave it their time and money, and it didn't work out.
I also wonder what means for WebGL and its future. Right now, WebGL works in browsers on macOS, Linux, Windows, iOS, Android, which is incredible. There is no equivalent.
Sure, Apple has started working on WebGPU, but that’s not yet ready nor is it guaranteed to gain Linux, Windows, Android support.