top | item 44154442

(no title)

mdre | 9 months ago

What’s really groundbreaking is the amount of ignorance displayed in this video. Also, I’m curious how long will it take for blender to reach performance parity with OpenGL. Houdini has been taking a few years now and VK is still 2x slower then opengl apparently.

discuss

order

flohofwoe|9 months ago

> Houdini has been taking a few years now and VK is still 2x slower then opengl apparently

Ouch, since OpenGL isn't exactly known for being performant to begin with.

This sounds a lot like Houdini has its core rendering code designed around the granular 'state-soup model' of OpenGL and is now trying to emulate that same behaviour on top of an API which expects that all state combinations are baked upfront into immutable objects (which in some situations - especially in DCC tools - may turn out to be impossible, because they may not be able to predict all required state combinations - or the number of required state combinations is simply to large too create upfront).

There's quite recent extensions for Vulkan (VK_KHR_dynamic_rendering, VK_EXT_ extended_dynamic_state and VK_shader_object) which try to break the extreme rigidity of the Vulkan 1.0 API and go back to a more OpenGL like dynamic state soup (which IMHO is going too far, because GL's granular state soup is also its biggest problem - the best compromise is somewhere in the middle, see D3D11 or Metal) - but it might help moving code from GL to Vulkan without having to discard and create pipeline objects all the time.