title: How does opengl project a 3d point to screenspace?
body: <p>I am trying to emulate a subset of opengl with my own software rasterizer.</p>
  
  <p>I'm taking a wild guess that the process looks like this:</p>
  
  <p>Multiply the 3d point by the modelview matrix -> multiply that result by the projection matrix</p>
  
  <p>Is this correct?</p>
  
  <p>Also what size is the projection matrix and how does it work?</p>