I'm having trouble finding resources on what the best way to handle this particular situation is. I've got a lot of static world geometry that is divided into objects with their own per-object constants. The constants are mainly the world matrix and a handful of other vectors, ie very small. In GL or 11.1 I'd create a single giant constant buffer and bind ranges for rendering. I'm not sure how to handle it in 11, though. There's a couple ways I can think of doing it:
1) Thousands of tiny immutable constant buffers, bind appropriate one for each draw call.
2) Just a few dynamic buffers, rewrite them for each draw call.
3) Create giant constant buffer(s), fill up a dynamic constant buffer each draw call with an index into the giant one.
I'm inclined to #1 right now, doesn't seem to be any advice on constant buffer sizing out there.
Edited by Promit, 11 February 2013 - 05:28 PM.