Has everyone settled on what the "right" way to handle matrix data in vulkan is?

Are push constants getting totally filled with model matrix data (this seems less than ideal?), is everyone keeping multiple large UBOs that store model matrices to minimize binding (or 1 large SSBO?)

or for the most part are things just getting their own unique ubo for their model matrix?

@khalladay I'm planning to take the middle ground with the mind set that 'everything is an instance' when it comes to drawing

@bobvodka it's fascinating how many different answers I've gotten between here and twitter. I'm not sure if that's a good thing or a bad thing haha

your approach definitely sounds like fun though.


@khalladay Well, I figured I'd need instancing support anyway but, tbh, I just didn't fancy coding two code paths ;) Same reason I'm going down the vertex pull path not the normal vertex push, reduces code complexity in the long run (I hope)

@bobvodka Saw a lot of talk about vertex pulling on twitter over the weekend (I hadn't heard of it before), seems like there's a lot of perf concerns on non AMD hardware?

@khalladay Yeah, that's a mild concern and I need to dig in to that more, might just be a data structure problem - however as I dev at home on AMD that's not an immediate concern, I can always go back and fix things up later if needs be - I'm still lacking a first triangle so that's a future problem ;)

@bobvodka haha fair enough. the more I read about it... the more I wish I had an AMD card at home, it seems way more fun than working with NVidia hardware. Every time I see some cool new gpu feature the next post I see is "terrible on anything but AMD"

@khalladay Yeah, for stuff like that it's certainly true... but I can't help but look with a degree of envy at the device command extension - like the D3D12 stuff but more hard core. If gfx cards weren't £££ billion right now I'd be tempted to throw an NV card in with my AMD to play with both feature sets.

Sign in to participate in the conversation
Gamedev Mastodon

Game development! Discussions about game development and related fields, and/or by game developers and related professions.