@aeva that’s actually really helpful for me! I’m very new to graphics programming so if I’m being honest, I still don’t know what I don’t know! Thank you for sharing :)
Top-level
6 comments
@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. |
@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.