Since Vulkan has all of these extensions now to make the fiddly parts of Vulkan optional, I think they should also give us an extension called something like VK_KHR_OPENGL which makes all of Vulkan optional by giving you a full OpenGL implementation
Since Vulkan has all of these extensions now to make the fiddly parts of Vulkan optional, I think they should also give us an extension called something like VK_KHR_OPENGL which makes all of Vulkan optional by giving you a full OpenGL implementation 16 comments
Joking aside, I wonder how much fiddly stuff remains in the API that hasn't either been made optional by extensions or automated by useful libraries? It seems like Vulkan has become a lot more accessible recently. @preston oh wonderful :D I should also add then: one of the big big big benefits for APIs like Vulkan and D3D12 is the ability to record commands in parallel. For all practical purposes OpenGL is a single threaded API. For more high end stuff like AAA games, OpenGL can easily become a major CPU side bottleneck. @preston Vulkan gives you control over things that would have been managed automatically by the driver for OpenGL under the theory that application-specific implementations of things like resource management will be lighter weight than a general solution. This increase of control comes at the cost of a major increase in labor. Which is fine for big studios, but maybe not so great for individuals working on custom stuff. @preston Right now we're seeing an interesting trend where the khronos group is standardizing extensions that add more and more high level conveniences back into the API, while simultaneously we're seeing high quality libraries emerge to provide production ready implementations for things you'd normally have to DIY w/ Vulkan, like device selection or memory management. |
@aeva that's called zink https://docs.mesa3d.org/drivers/zink.html