I am currently reading upon Geometry Instancing, as I want to render a lot of animatable objects on the screen.
However I have come to a more fundamental question first: Why do I even need to use it?
Consider this setup:
- A plane as the base of the game world
- On top of that a lot of tiles, which can be destructable with the use of a Physics Engine.
- A camera which you can control with WASD + mouse for direction.
Now I do understand that there definately must be a performance hit at some point. I thought it would occur when sending all object data (vertices) to the GPU.
However the performance hit remains to be there, at every single frame it renders, what is actually happening in the background? Considering nothing at my scene is changing at all, it even happens when I do not move the camera at all.
I have no clue what exactly is going on and would definately want to read up more about it before starting to fix an issue that I do not understand, thus making the fix also harder to understand. I do know however that the fix (Geometry Instancing) works by sending the vertex data only once per multiple of objects based on that same vertex. So somehow it would have to do with the amount of vertices, yet I don't see what is going on?
Also: I am using the Ogre3D engine, so any specific answers/tips to that engine would also be welcome.