Advanced Graphics &
3D Viewing Pipeline
Three-dimensional Viewing Pipeline
Transform into view coordinates
and Canonical view volume
Clip against canonical view
Project on to view plane
Map into viewport
Transform to physical
Normalized device coordinates
Physical device coordinates
Mostly used by drafters and engineers to create working drawings
of an object which preserves its scale and shape.
The distance between the COP and the projection plane is infinite
i.e. The projectors are parallel to each other and have a fixed
• Orthographic projection:
here direction of projection is perpendicular to the
• Axonometric projection:
when direction of projection is not parallel to any of
three principal axes.
• Generalization of the principles used by artists in drawing of scenes.
• It takes object representation in view space (L.H.S.) and produce a
projection on the view plane (canvas used by the artist).
• The projection of a 3D point onto the viewplane is the intersection of
the line from the point to the COP (eye position of the artist).
• Distance between the COP and projection plane is finite.
• Perspective projection does not preserve object scale and shape.
- the farther an object from the COP, the smaller it appears (i.e. its
projected size becomes smaller).
- there is an illusion that certain sets of parallel lines (that are not
parallel to the view plane ) appear to meet at some point on the view
- the vanishing point for any set of parallel lines that are parallel
to one of principal axis is referred to as a principal vanishing point
- the number of PVPs is determined by the number of principal
axes intersected by the view plane.
One principal vanishing point projection
- occurs when the projection plane is perpendicular to one of the
principal axes (x, y or z ).
View plane is parallel to
XY-plane and intersects
Two principal vanishing point projection
Vanishing point Z-axis
View plane intersects
Both X and Z axis but
not the Y axis
• Three principal vanishing point intersection
View plane intersects all
Three of the principal axis
X, Y and Z axis
Deriving Perspective Projection
point vertex denoting COP : (xc,yc,zc)
point on the object : (x1,y1,z1)
representation of “projection ray” containing above two points
x = xc + ( x1-xc) u …………..eq 1
y = yc + ( y1-yc) u …………..eq 2
z = zc + ( z1-zc) u …………..eq 3
The projected point (x2, y2,D) will be the point where this line intersects the
XY plane . Putting z=0 for this intersection point in eq 3 .
u = - zc / z1-zc
Substituting into first two equations,
Value of D may be computed which is different from zero (to
preserve depth relationship between objects)
D = z1 / (z1 –zc)
Standard perspective projection
P (x ,y, z)
Using similar triangles ABC and A‟OC,
x‟ = d.x / (z+d)
y‟ = d.y / (z+d)
z‟ = 0
matrix representation :
viewing based on synthetic camera analogy.
Specifying an arbitrary 3D view
By selecting different viewing parameters, user
can position the synthetic camera.
Effect of change of viewing parameters
Imagine a string tied to „view reference point‟ on one end and to the
synthetic camera on the other end.
By changing viewing parameters, we can swing the camera through
the arc or change the length of the string.
- changing the view distance is equivalent to how far away
from the object the camera is when it takes the picture.
- changing the view reference point will change the part of the
object that is shown at the origin.
- changing the view plane normal is equivalent to
taking photograph of object from different orientations.
- changing view-up is equivalent to twisting the camera
in our hands. It fixes the camera angle.
- The view volume bounds that portion of the
3D space that is to be clipped out and
projected onto the view plane.
View Volume for Perspective Projection
- its shape is semi-infinite pyramid with apex at the
view point and edge passing through the corners of the
Frustum view volume
View Volume for Parallel Projection
-It's shape is an infinite parallelepiped with sides parallel to the
direction of projection.
Producing a Canonical view volume for a
for the Perspective
Step 1: shear the view volume so that centerline of the frustum is
perpendicular to the view plane and passes through the center of the
Step2: scale view volume inversely proportional to the distance from
the view window, so that shape of view volume becomes rectangular
Converting object coordinates to view plane
similar to the process of rotation about an arbitrary axis
World coordinate system
View plane (eye)
1. Translate origin to view reference point (VRP).
2. Translate along the view plane normal by view distance.
3. Align object coordinate‟s z-axis with view plane coordinates z-
axis (the view plane normal).
a)- Rotate about x-axis to place the line (ie. Object coordinates
z-axis) in the view plane coordinates xz-plane.
b)- Rotate about y-axis to move the z axis to its proper position.
c)- Rotate about the z-axis until x and y axis are in place in the
view plane coordinates.
„Computer Graphics‟ by S. Harrington (pp. 279-284)