Author Topic: (Android) Game Performance: Geometry Instancing  (Read 2865 times)

0 Members and 1 Guest are viewing this topic.

Stefan

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4276
    • View Profile
(Android) Game Performance: Geometry Instancing
« on: May 26, 2015, 08:00:33 PM »
Game Performance: Geometry Instancing

...Rendering a lot of meshes is desired to create a beautiful scene like a forest, a cheering crowd or an army, but doing so is quite costly and reduces the frame rate. Fortunately this is possible using a simple technique called Geometry Instancing.

Submitting draw calls causes OpenGL to queue commands to be sent to the GPU, this has an expensive overhead which may affect performance. This overhead grows when changing states such as alpha blending function, active shader, textures and buffers.
Geometry Instancing is a technique that combines multiple draws of the same mesh into a single draw call, resulting in reduced overhead and potentially increased performance. This works even when different transformations are required.
Geometry instancing can be used in 2D games for rendering a large number of sprites, or in 3D for things like particles, characters and environment.
...
If you are drawing the same mesh multiple times in a frame make sure to implement Geometry Instancing in your pipeline! This can greatly reduce overhead and improve performance.