1. You've named the release order, but not your argument behind why that should be limit what's currently supported today. E.g. if someone "OpenGL precedes Metal" wouldn't be an argument why Apple should not have added Metal support either.
2. I can easily list 5x as many AAA games, engines, or libraries supporting a Vulkan backend vs a Metal backend, does that mean Apple shouldn't support Metal? I'd say no, but maybe you're seeing this kind of logic differently. I'd be fully in support of macOS/iOS/iPadOS/visionOS adding native DirectX support, if that's what you mean. It just seems less likely than Vulkan (for several reasons).
This is of course horseshit. Vulkan was being developed before Metal and Apple was even part of that development - they only dropped out once they decided to do their own thing instead.
Vulkan is the primary rendering API on Android and Linux these days and also well supported on Windows by GPU vendors. Applications that don't use it yet generally don't because they don't need it and still OpenGL (ES) (or for Windows applications, use D3D instead).
> This is of course horseshit. Vulkan was being developed before Metal and Apple was even part of that development
It's fascinating that history is changing so fast now that even events of 10 years ago can be claimed to be something they weren't.
- 2013: AMD starts developing Mantle, and it is only available as part of AMD Catalyst, and only on Windows.
- 2013 (at least): Apple starts working on their own graphics API.
- June 2014: Metal 1.0 on iPhones is announced by Apple (it means it had already been in development much earlier, that's why I wrote "2013 at least" above)
- July 2014: Khronos starts work on Vulkan
- August 2014: The announcement of the Vulkan project and the call for participation.
- June 2015: Apple announced Metal on Macs.
- Sometime in 2015: AMD discontinues Mantle and donates it to Khronos.
- December 2015: Vulkan 1.0 specification announced by Khronos group
- February 2016: The full spec and SDK for Vulkan 1.0 released
So, reality: Metal had been released two years before Vulkan even had a specification.
> also well supported on Windows by GPU vendors.
Keyword: GPU vendors. Not by Microsoft.
> Vulkan is the primary rendering API on Android and Linux these days
But not on Macs, iPhones, Windows, XBox, and Playstation.
And yet, "omg why doesn't Apple support this late-to-the scene quite shitty API that it must support because we say it must".
Aside of the technical merits there are also the questions of open vs proprietary, platform availability etc.
Also the question of "technically best solution" is also fraught with subjective definitions of "better". You also want competition in approaches. E.g. Vulkan might not have happened (an we would be stuck wit OpenGL) without the newer more modern GPU APIs from Metal and DX12.
1. Metal precedes Vulkan
2. Hardly anyone supports Vulkan https://www.carette.xyz/posts/state_of_vulkan_2024/