title: What is the most efficient way to draw voxels (cubes) in opengl?
body: <p>I would like to draw voxels by using opengl but it doesn't seem like it is supported.  I made a cube drawing function that had 24 vertices (4 vertices per face) but it drops the frame rate when you draw 2500 cubes.  I was hoping there was a better way.  Ideally I would just like to send a position, edge size, and color to the graphics card.  I'm not sure if I can do this by using GLSL to compile instructions as part of the fragment shader or vertex shader.  </p>
  
  <p>I searched google and found out about point sprites and billboard sprites (same thing?).  Could those be used as an alternative to drawing a cube quicker?  If I use 6, one for each face, it seems like that would be sending much less information to the graphics card and hopefully gain me a better frame rate.</p>
  
  <p>Another thought is maybe I can draw multiple cubes using one drawelements call?</p>
  
  <p>Maybe there is a better method altogether that I don't know about?  Any help is appreciated.</p>