### World Space

### Camera Space

### Clip-Volume Space

Image Source: modified from http://www.ntu.edu.sg/home/ehchua/programming/opengl/cg_basicstheory.html

### Perspective Projection

This week, we focused on two different points in the pictures above: the right corner of the box
that the flower is resting on and the left arm of the person standing next to it. These points are indicated by the red dots
in the picture. In order to move these points from world space to camera space to perspective projection, we needed to take the initial
verticies in world space and multiply them by the T(-eye) matrix in order to get the coordinates in camera space. In these cases, we used the gluLookAt
coordinates of ((8, 0, 10), (0, 0, 0), (0, 1, 0)) to obtain the T(-eye) matrix shown below. As you can see in the camera space image, we are seeing a
rotated view of the image, but it still appears unrealistic. From this step, we took the new matrix and adjusted it's perspective
by gluPerspective(60, 1, 10, 30). By doing this, we obtained a much more realistic version of the graphics scene. Shown below are the
formulas for T(-eye) and T(projection), and the results obtained from our calculations.

The following are the formulas for moving from world space to camera space, and for moving from camera space
to perspective projecion.

The following calculations show the results obtained for moving the point of the hand and the corner of the
box from world space to camera space to perspective projection.

Resources:

http://unspecified.wordpress.com/2012/06/21/calculating-the-gluperspective-matrix-and-other-opengl-matrix-maths/

http://www.ntu.edu.sg/home/ehchua/programming/opengl/cg_basicstheory.html