[Hearn & Baker: p. 432-441 (Warning! their perspective projection uses a different eye point!)
Foley & van Dam: p. 229-242 ]

Introduction to Projection Transformations

Mapping: 
Projection: Mapping with m less than n
Planar Projection: maps 3D object onto plane

Parallel Projection

Perspective Projection

A Taxonomy of Projections

A Basic Projection Matrix

Let's use the following example to construct a matrix that performs a perspective transformation:
From similar triangles, we can see that  y'/d = y/z
Thus, y' = yd/z
Similarly, x' = xd/z

We can express this in matrix form by altering the value of the homogeneous parameter, h:
 
[ x ]   [1 0  0  0] [x]
[ y ] = [0 1  0  0] [y]
[ z ]   [0 0  1  0] [z]
[z/d]   [0 0 1/d 0] [1]