Resource for understanding view, projection, etc.

I noticed most resources either assume you know a lot already or assume you know math of professional level or assume you’re going to find other resources to fill gaps.

Is there a resource that takes someone without already a knowledge on view matrices in graphics and takes them to understanding fully how
[ul][li]to set up a ‘virtual camera’[]move objects[]move the observer[*]etc.[/ul]Notice I’m not interested in automatic and cookie-cutter ways in OpenGL since[/li]

  1. They are deprecated and removed in latest versions of the spec, one has to set them manually
  2. This is not understanding.

I would say first learn a bit about vectors and matrix multiplications, this page is quite visual :
http://en.wikipedia.org/wiki/Matrix_multiplication#Illustration
Please ask if you need to learn more about this, as it is important.

Then how to create a projection matrix :
http://en.wikipedia.org/wiki/Transformation_matrix#Perspective_projection
To me the biggest trick to understand was that even when working on 3D space, vectors are in fact 4D, same for matrices, they are 4x4 : the 4 components are often called x,y,z,w.
The “w” part of a position vector is 1 by default, but can be 0 to represent a “position at infinity” (ie. can be used to represent stars, or the horizon line).

Then doing some matrix manipulation for translation/rotation.
http://en.wikipedia.org/wiki/Translation_%28geometry%29
http://en.wikipedia.org/wiki/Rotation_matrix#Basic_rotations

Note that “move the observer” is the same as “move objects”, just done in the opposite direction.