1 Sep 2006 01:25
Re: [Algorithms] Balancing number of draw calls vs ease oflighting/shadowing - is big, solid geometry still the ideal?
Chris Butcher (BUNGIE <cbutcher <at> microsoft.com>
2006-08-31 23:25:09 GMT
2006-08-31 23:25:09 GMT
Another alternative is that you can build your index buffers dynamically and cache them. You could then have separate index buffers for "NE wall chunks affected by light 1" and "Entire house". We did something similar to this in Halo 2, where large dynamic objects have a spatial subdivision scheme that allows us to render only part of an object for lighting/shadowing. Because this was on Xbox 1 we had to copy the indices into the push buffer every frame so it wasn't a massive overhead to build a custom set of indices depending on the pieces of the object that were rendered. For next-gen consoles, building custom command buffers like this is something that we could well see more of. Particularly since it's an easily parallelisable task, unlike the "main" render thread which is inherently serial. -- Chris Butcher Technical Lead Bungie Studios butcher <at> bungie.com -----Original Message----- From: gdalgorithms-list-bounces <at> lists.sourceforge.net [mailto:gdalgorithms-list-bounces <at> lists.sourceforge.net] On Behalf Of Gregory Seegert Sent: Thursday, August 31, 2006 10:04 To: Game Development Algorithms Subject: Re: [Algorithms] Balancing number of draw calls vs ease oflighting/shadowing - is big, solid geometry still the ideal? An approach I've used in the past is to keep the one large vertex buffer, but arrange the indices in the index buffer spatially such that subsets of the geometry can be rendered simply by specifying different indices. This way you can still render the entire mesh in one call, or(Continue reading)
RSS Feed