title: What's the best way to draw multiple objects in modern OpenGL?
body: <p>I'm trying to use modern OpenGL and shaders, instead of the immediate mode I have been using so far. I recently learned about VBOs and VAO, and I'm still trying to get my head round them, but I know that a VBO takes an array of floats that are vertices, which it then passes to the GPU etc </p>
  
  <p>What is the best way to draw multiple objects (which are all identical) but in different positions, using VBOs. Will I have to draw one, then modify the array passed in beforehand, and then draw it again and modify and draw and modify and so on... for all blocks in the screen every frame? Or is there a better way?</p>
  
  <p>I'm trying to achieve this: <a href="http://imgur.com/cBgJ0sK" rel="noreferrer">http://imgur.com/cBgJ0sK</a></p>
  
  <p>Any help is appreciated - I don't want to learn bad (deprecated, old) immediate mode habits, when I could be learning a more modern way!</p>