Utility/origin of projection matrix

Hello Babylonians! I’ve been playing with code and have gotten a sense for what changes a mesh’s local matrix and its world matrix, and have seen how the scene’s view matrix changes in response to camera movement. But I’ve been unable to meaningfully cause changes in the scene’s projection matrix. I’ve changed it by hand and seen the expected effects, but it leaves me with a few questions:

  1. Are there any reasons to modify the scene’s projection matrix?
  2. What are the differences between the camera and the scene’s projection matrices?
  3. And, most importantly, how are they computed in the first place?

I’m trying to understand how all of the pieces fit together. I’m starting with understanding how the various matrices compose to go between 3D and 2D. Any additional information in that regards, or anything else you think would be interesting/useful – by all means, please share it. Thank you.

The projection matrix is only here to simulate the effect of the camera, what changes it are for instances, the type of camera: perspective or not, the field of view and so on.

Here is a great article on it : OpenGL Projection Matrix

That is an excellent link. Thank you. That makes a lot of sense.