http://en.wikipedia.org/wiki/3D_projection#Perspective_projection