State of Vulkan in Cinder?

Hello Embers,

I’m about to start setting up a couple new 3D graphics projects and was contemplating making the jump to Vulkan. What is the current state of Cinder Vulkan support with respect to the current state of Vulkan? What is the best path currently to set up a Cinder Vulkan project? Is it to use the Vulkan branch of the Cinder repo on Github?

Thanks much

I’m personally not aware of anyone using the cinder vulkan branch now. I view it as more of a proof of concept that was meant for vulkan launch but since then, the vulkan ecosystem has changed drastically and there are well-defined ways to not only utilize the vulkan API, but do so in a way that is similar to DX12 and metal.

I will say that there has been work towards developing a ci::app::Renderer to support these next gen graphics APIs… just nothing yet ready for showing.

I will say that there has been work towards developing a ci::app::Renderer to support these next gen graphics APIs… just nothing yet ready for showing.

I’m also curious about the state of Vulkan (and other “modern graphics API” like DX12/Metal) support. Is this work being done in a separate repo? Is there any way to contribute to this effort?

Wondering if WebGPU (via Dawn or other C++ implementation) could be a future cross-platform graphics API for Cinder, maybe one that’s not as “difficult” as Vulkan but still modern, “close to the metal” and performant.

I was looking at Dawn / WebGPU and it looks promising, but for me it doesn’t provide some of the newer / cooler graphics features like raytracing and meshlets, so I’ve been looking at other graphics abstractions that would provide me with these features.

I’ve really been liking Diligent Engine, and for a while now we’ve been playing with integrating DG with cinder apps. Still too early to use in fast-paced client work but very promising. Here’s a screenshot of a compute based flocking sim I was working on last year, hope to do a write-up on it as time permits: