As any good 3D programming basics tutorial (like maybe this one) will tell you...
- A Model matrix converts vertex coordinates from model space (the coordinate space in which your mesh is specified, which is usually ignorant of where you want to place the model in the scene) to world space (the conceptual space of your scene).
- A View matrix converts from world space to eye space (that is, a coordinate system relative to the "camera" that vies your scene).
- A Projection matrix converts from eye space to clip space (a -1.0 to 1.0 cube representing your screen plus some depth, which the GPU then converts into pixel space).
The Projection matrix already works in terms relative to the viewpoint -- you've already fixed where the eye is and what point it's looking at, so the projection matrix only changes your field of view angle, aspect ratio, and near and far clipping planes. If you want to change the point you're looking at, specify a different LookAt
transform for your View matrix.