Email or username:

Password:

Forgot your password?
Top-level
aeva

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.

11 comments
P

@aeva I did the “display a triangle with Vulkan” a few months ago but decided to stay with OpenGL until I’m a lot more competent. To be honest, I don’t fully know what I’m missing though. At what point do you think it’s worth it to seriously take another look at vulkan?

aeva

@preston the time to switch to Vulkan is when you have a problem that Vulkan solves but OpenGL does not

aeva

@preston for me the appeal of vulkan is having more control over when shaders compile, being able to use half precision floats, and potentially also dabble w/ hw ray tracing, but the overhead of rebuilding my engine around it is high enough that I haven't bothered yet.

P

@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 :)

aeva

@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.

aeva

@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.

aeva

@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

@preston so my crystal ball here says that the longer you wait, the easier switching to Vulkan is going to get

P

@aeva oh that’s good to know!! I love when things get easier for me when I do nothing too hahah!

P

@aeva that’s really helpful! Thank you! I think a long way from needing that kind of control, but it’s great to keep in mind.

Thank you for sharing! It’s very kind of you!

Go Up