Instancing is a new way to offload the CPU from some work when rendering many copies of the same geometry.  It does it by reducing the overhead of drawing multiple copies of the same vertex buffer.

In OpenGL it’s only fast to use instancing when the instanced mesh consists of very few triangles.

Nvidias instancing demo, here with 136499 meshes rendered at once with 24 triangles per mesh. It runs at 20 fps stable on a GeForce 8800 GTS. (left image is all objects viewed from far away, right is zoomed in)


A image from Microsofts DirectX10 instancing demo


Some test made that shows when to use instancing and when not

HLSL instancing (therefore DirectX)

Nvidias DirectX10 implementation of instancing

Microsofts DirectX9 instancing sample

Microsofts DirectX10 instancing sample

An OpenGL implementation of a pseduo-instancing (recommended for old hardware).

OpenGL instancing:

Be Sociable, Share!

4 thoughts on “Instancing

  1. antimalaware

    Does your blog have a contact page? I’m having trouble locating it but, I’d like to send you an email.
    I’ve got some recommendations for your blog you might be interested in hearing. Either way, great site and I look forward to seeing it develop over time.


Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>