Hi all,
I’m trying to wrap my head around some efficiency questions relating to dynamic terrain generation and 3D object placements.
Imagine I have a level that is constructed out of a bunch of 3D tiles (to form a rough interpretation of a terrain). These tiles might represent 2x2 meters each, so there could be a good couple of hundred of them in-view at any one time.
Then, imagine plonking a bunch of 3D RTS-style buildings and clutter objects over the terrain (again, a random number, but likely a lot), and I already have some worrying concerns about:
- The number of 3D objects that exist within my scene hierarchy
- What the impact is (both in terms of CPU / GPU usage) of having many instances of geometry active in the scene, and potentially in view.
What I’m assuming to be the case is the following:
Where the view into the scene (black) is automatically culling the rendering of the geometry outside of the view frustum (i.e. rendering anything shaded in red), and the objects and terrain shown in grey / blue are completely skipped over. Is this the case?
When it comes to having a scene with, perhaps, hundreds of active objects - is there a tried-and-tested way you should organise the scene or re-use scene assets to get the most optimal performance? Or can you get away with just adding all your scene geometry without doing any behind-the-scenes work?
I’m genuinely keen for some advice here, as I don’t want to start the coding of this without considering the long-term performance implications.
Thanks!