title: Good Practices for updating camera matrix
body: <p>I'm learning OpenGL right now, specifically how to move a camera. If I wish to change my camera matrix, for example, if the user is translating it with WASD, there are two primary ways I could do this:</p>
  
  <ol>
  <li>Pre-multiply the camera matrix by the new translation matrix.</li>
  <li>Manage a set of attributes for the camera, such as position, viewing angle, up-vector, modify those, and re-compute the camera matrix from these.</li>
  </ol>
  
  <p>Which of these is considered better? I feel like the first would introduce drift, and the second would require more computation, but I don't know enough to analyze the two.</p>