Course Evaluations are now available!

advertisement
Computer Science 385.3
Term 1, 2006
Tutorial 5
The Final Exam
The Final Exam
Special Notes:
-This is the last week of tutorials. Any further questions can be
directed by email.
-The Final Exam will be held at 2:00 on December 13th.
-Course Evaluations are now available!
The Final Exam
Tutorial Outline:
(Disclaimer: This is list is by no means exhaustive! Do not assume that only the
topics mentioned here will be covered on the exam!)
-Final Exam Format
-Matrices (Geometric Transformations/Camera Projections)
-Lighting (3-Term Lighting Model/Alternate Lighting Models)
-Color (Color Models/Shading)
-Advanced Geometry (Splines/BSP Trees)
-Physics
-Choice of Halftoning or Renderman.
The Final Exam
Final Exam Format:
The general goal of the exam is to test your understanding of the
underlying concepts in graphics, not just their implementation in
OpenGL.
In other words, there may be some OpenGL-specific questions, but the
focus of the exam will not be on remembering OpenGL callbacks.
-Approximate Duration: 2 hours.
Questions will be mostly short answer, with a few mathematical
- mostly involving matrices.
exercises
The Final Exam
Matrices – Geometric Transformations:
Recall the definition of the ModelView matrix. It is used to determine
the location of objects within a scene.
Transformation matrices can be applied to ModelView matrix to move
objects around the viewing position.
You should know the generic matrices for the following operations:
Translation;
Rotation;
Scaling;
The Final Exam
Matrices – Geometric Transformations:
Translation;
Rotation;
0
0 0
0 0 x
1
0
1 0 y
0 cosA -sinA 0
0
0 0 1 z
0
sinA cosA 0
0 0 Sz 0
0
0
0
0
0
0
Sx 0
1
0 0 1
0
Scaling;
1
Sy 0 0
0 0
1
-These operations can be applied repeatedly to the Model View matrix.
-Order does matter! Each operation is commutative in and of itself, but not
with the other operations.
-Recall that OpenGL applies them in reverse order!
The Final Exam
Matrices – Camera Projections:
In OpenGL, the camera position never changes; instead, the scene is
rotated or translated around the camera.
The viewing volume can be defined in several ways:
Orthogonal Projection: Objects of the same size will appear the same
size, regardless of distance from the viewing position – useful for maps.
Perspective Projection: Objects will be scaled according to their
distance from the camera. GlFrustum creates a viewing pyramid that
will perform this scaling.
The Final Exam
Lighting – The Three Term Lighting Model:
You should have a good understanding of the 3-Term Lighting
Model, and be able to describe what each term means, and how
they can be calculated.
Term 1: ?
Term 2: ?
Term 3: ?
The Final Exam
Lighting – The Three Term Lighting Model:
Term 1: Ambient – Defined as the result of direct light bouncing between
objects.
I = Ia * Ka
where Ia is the ambient light in the scene and Ka is the surface properties.
Term 2: Diffuse – Direct light eminating from a light source which strikes the
objects in the scene and is reflected equally in all directions.
I = Ip * kd * cos Theta
where Ip is the intensity of the diffuse light source, kd is the reflective property
of the surface, and Theta is the angle between the surface normal and the light.
Term 3: Specular – The highlights that can appear on metallic, shiny objects.
I = f_att * Ip * ks ( cos^n Alpha )
where f_att represents attenuation, Ip is the intensity, Ks is the specular
coefficient of the material and Alpha is the difference between the vieing angle
and the angle of reflection.
The Final Exam
Lighting – Alternate Lighting Models:
Radiosity – Global Illumination Method that aims to better model the
interaction of light as it bounces through a scene. This permits for the
modeling of soft shadows, which is difficult with direct illumination
methods.
However, direct reflections (specular highlights) are difficult to achieve.
Bi is the radiosity of patch i, Ei is the energy
emitted by i, Ri is the reflectivity of i. The sum
measures the input from all other patches.
The Final Exam
Colors – Color Models:
Many different color models exist, and they have different advantages with
regard to the human visual system.
Adelson’s shadow
The Final Exam
Color – Color Models:
Adelson’s shadow
The Final Exam
Color – Color Models:
RGB (Red, Green, Blue) is the classic color model that is
used for computer graphics. It is an additive model – we add
each of the three primaries to a black base in order to obtain
all the colors.
CMYK (Cyan, Magenta, Yellow and Key/Black) is used by
output devices such as printers. It's a subtractive model,
where CMY is subtracted from a white base.
The Final Exam
Color – Shading:
Several shading models have been discussed in this course. You are
expected to know how they defer from one another.
Flat Shading: Each polygon is given a single color.
Gouraud Shading: Lighting calculations are performed only at
the vertices of the polygons, and then the interior pixels are
colored by interpolation. This is implemented in OpenGL.
Phong Shading: Lighting calculations are performed at each
and every pixel to determine its color.
The Final Exam
Advanced Geometry – Hermite Curves:
Many types of splines and advanced curves were discussed in class.
Though you should understand the concepts behind all of them, you
won't need to know the mathematics behind any of them except
hermite curves.
Hermite Curves: Controlled by two endpoints and two tangents at
the endpoints.
x(t) = (2t^3 - 3t^2 + 1) * xp1 + (-2t^3 + 3t^2) * xp4
+(t^3 - 2t^2 + t) * xr1 + (t^3 - t^2) * xr4.
y(t) = (2t^3 - 3t^2 + 1) * yp1 + (-2t^3 + 3t^2) * yp4
+(t^3 - 2t^2 + t) * yr1 + (t^3 - t^2) * yr4.
z(t) = (2t^3 - 3t^2 + 1) * zp1 + (-2t^3 + 3t^2) * zp4
+(t^3 - 2t^2 + t) * zr1 + (t^3 - t^2) * zr4.
The Final Exam
Advanced Geometry – BSP Trees:
Binary Space Partitioning Trees are used to partition space. This is
useful for modeling and for culling hidden surfaces.
In essence, this involves inserting planes into the world and
determining which objects are in front or behind them. This is
represented in the form of a tree.
The Final Exam
Advanced Geometry – BSP Trees:
+-----------+
+-----+-----+
+-----+-----+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
a
|
->
|
b
X
c
|
->
d
|
|
|
|
|
|
+--Y--+
f
|
The resulting BSP tree looks like this at each
step:
a
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+-----------+
+-----+-----+
e
X
-/ \+
-/ \+
/
/
...
->
...
|
X
\
\
|
|
|
|
-/ \+
|
|
/
+-----+-----+
b
c
Y
e
f
\
d
The Final Exam
Physics:
Animation was not a big part of this course, but you have done some
rudimentary physics in your assignments.
You should have an understanding of the force interactions involved
with collisions in the pool table assignment.
You should also have some understanding of particle motion and how
to do very simple integration and dynamics.
The Final Exam
Halftoning or Renderman:
As in Assignment 4, you will have the choice of doing a question on
Halftoning or one on shaders in Renderman.
For more details on these, see the slides for Tutorial 4.
The Final Exam
Good luck!
Download