title: Use different shader programs in OpenGL?
body: <p>I have to use two different shader programs in OpenGL for different objects.</p>
  
  <p>I found that I have to use <code>glUseProgram()</code> to switch between different shader programs, but not much information on that.</p>
  
  <p>How does generating and binding VAOs and VBOs work for each shader program (how &amp; when) given that I have two different shader programs I use for different objects?</p>