Apple doesn't support Vulkan. There is a library from Khronos called MoltenVK that translates most of Vulkan to Metal, but last I checked it did have a few limitations, because Metal in general is a bit higher level than Vulkan.camsr wrote: Fri Jan 01, 2021 10:54 pmNow it looks like Apple wats to be different again. However, Vulkan seems to be the next iteration of OpenGL, and AFAIK if the hardware supports Vulkan, the OS does also.
Also Vulkan isn't really the "next iteration of OpenGL" but rather a separate, much lower-level API. While OpenGL is (relatively) easy to use and works great for reasonably simple stuff, the high-level API is not necessarily a great representation of how the hardware actually works, so the driver is forced to do a bunch of stuff to translate and this does introduce a bunch of overhead.
The idea with Vulkan and other low-level APIs is expose much more details on how the hardware actually works and move the responsibility of figuring it out from the driver to the application. This is great if you're trying to get as much performance as possible, but it also means that you need a LOT more code even to draw a simple triangle.
I don't know what the official position is now, but when Vulkan was announced, they actually made it rather clear that it's not a replacement for OpenGL, but rather an alternative. If you want a simple API where the driver will take care of most of the details, use OpenGL. If you want to extract the most out of your hardware and don't mind doing some extra work, then use Vulkan.
