My guess is we'll see Vulkan in the next major OSX/iOS release.
My guess is we'll see Vulkan in the next major OSX/iOS release.
Console vendors are also there and they never cared about OpenGL support, regardless of urban legends.
The only console to ever support OpenGL was the PS3 with the OpenGL ES 1.0 / Cg combo that very few ever bothered to use.
Also remember that although Apple created OpenCL, their implementation leaves a lot to wish for.
Nintendo uses GX and GX2.
I think they just wanted to see if they can push major game developers to adopt Metal for Mac games early on. If they could do that - awesome for them, and they would never have to adopt Vulkan. If they can't, they'll have to adopt Vulkan.
Here's hoping the latter will happen.
Metal was made available in iOS8, in September 2014, almost 18 months ago. That's pretty long. In fact the first Metal public demo predates the Vulkan private kickoff meeting.
> I think they just wanted to see if they can push major game developers to adopt Metal for Mac games early on.
Mid-2015 they made their iOS graphics API — which had been available for nearly a year at this point — available on OSX. Fact remains that they realised a need for and started working on a lower-overhead API much earlier than Vulkan was conceived let alone released, likely circa 2012~2013 if they were almost done by mid-2014.
Vulkan was announced in December 2014, with no significant commitment.
iOS 8 including Metal was announced mid-2014, and would have been in development for a considerable time before. By the time it was announced for OSX, Vulkan was still anaemic and not showing significant progress.
So it does make sense to keep using Metal for them.
> I think they just wanted to see if they can push major game developers to adopt Metal for Mac games early on. If they could do that - awesome for them, and they would never have to adopt Vulkan.
If that was the plan, it's probably going to fail: The developers of Unity e.g. found Metal, DX12 and Vulkan so similar that they estimate to be able to support all three with minimal development overhead.
I know Metal was announced for iOS earlier - I was talking about the support for Mac OS X. They had no good reason to adopt it for Mac OS X at that point, if they were planning on adopting Vulkan in the near future anyway. Unless, like I said, they'd prefer to keep Metal over Vulkan, and wanted to give it a head start to see if PC game developers would start adopting it.
> If that was the plan, it's probably going to fail: The developers of Unity e.g. found Metal, DX12 and Vulkan so similar that they estimate to be able to support all three with minimal development overhead.
I'm not sure how you see that as a "failure". If they are so similar that game engine developers will keep Metal around anyway, then we'll see games be built on Metal, not Vulkan, for Mac OS X. How is that a "failure"? It would mean Metal "won".
Of course they did: it was already their API of choice on iOS, platform unification alone makes it a damn good idea to adopt it for OSX: iOS is by far their most popular gaming platform, integrating the API back to OSX makes it more likely they'd get more OSX support.
Not to mention a mid-2015 release of Metal-on-OSX means they'd probably been working on it since the Metal-on-iOS release. On top of fragmenting their platforms, waiting for Metal would have meant a year-long delay.
They did have a reason, except it's nowhere good. They don't want to support Vulkan because it increases their lock-in control and puts extra tax on cross platform development. Same reason MS doesn't want to support it on Xbox. It's not a good reason, it's pretty crooked but very Apple like.
Still, I wouldn't hold my breath on Apple supporting Vulkan soon. Their OpenGL support is usually a few versions behind so if they do ever support Vulkan I would expect it to be late.
I'll agree to that when I'll see it. I.e. if their intentions are good - they'll get behind the Vulkan effort and will add native support for it on their systems. So far they clearly stayed away from it, but surely noted all its ideas to use in their lock-in variant.
Multiple people have mentioned in this thread how engine vendors have abstracted all 3 competing technologies (Metal, DX12, "Vulkan") with minimal effort.
How is there any lock in here? How is it any different from Microsoft or any other vendor deciding to, or not, implement DX12 or Vulkan?
As was noted, it didn't exist before Mantle and before AMD decided to open it. So Apple in fact knew about it all along. Again, you can't try to dismiss their lock-in attitude with the claim that they just needed something and had no alternatives. They simply made the lock-in choice.
> Multiple people have mentioned in this thread how engine vendors have abstracted all 3 competing technologies (Metal, DX12, "Vulkan") with minimal effort.
Indeed, since they share lot's of core ideas (all of them originate in Mantle). The question is not about why one can't abstract them, but why Apple and MS push their lock-in instead of collaborating. And you wouldn't like the answer.
>How is there any lock in here? How is it any different from Microsoft
Who said it's different? It's the same crooked practice. But I'm surprised you don't see the obvious lock-in issue here.
I see that claim, I don't see any evidence. The first evidence of Mantle being donated to Khronos date back to early 2015, not early 2014. Mantle was not open-source or open at initial release, and wasn't even supported on all AMD hardware.
> So Apple in fact knew about it all along. Again, you can't try to dismiss their lock-in attitude with the claim that they just needed something and had no alternatives.
Wait, so Apple's proprietary API is bad because AMD's proprietary existed before it? How does that even make sense?
> They simply made the lock-in choice.
Mantle was only available for AMD hardware on Windows, Apple's first need was ARM/PowerVR on iOS…
> The question is not about why one can't abstract them, but why Apple and MS push their lock-in instead of collaborating. And you wouldn't like the answer.
You do realise your pet conspiration theories are only answers to the question "what are your pet conspiration theories" no matter how many time you hint at them, right?
Its design was generic, and both Apple and MS used it to make their lock-in variants.
And will use Vulkan on BSD/Linux, with much less problems than you have currently.
(Complaining about a lack of open software on a proprietary operating system running on proprietary hardware is a bit silly, isn't it?)