Midterm Review, Fall 10
CS 445: Computer Graphics
[Study][Home][Schedule]
The midterm will be held Tuesday, Oct 14, 2010.
Review class notes, online notes, labs, and relevant sections in textbook. The exam will be closed
book.
Topics
Ray Tracing
- Set up of world: camera, screen, world coordinates vs pixel coordinates.
- Calculating uvn.
- Pseudo code for the basic algorithm.
- What is a ray and how is it represented mathematically?
- Computing intersections with simple objects: spheres, planes, cylinders, ...
-
Color Representation.
- Lighting:
- How are normals calculated.
- How is color computed at intersection point using the Phong lighting model?
- How are shadows implemented?
- How are reflections implemented?
- Anti-Aliasing - what
is aliasing and how do anti-aliasing techniques work?
OpenGL Pipeline, Structure and Transformations:
- You must understand the openGL pipeline.. For example, see
- You should be able to write simple OpenGL code,e.g. using the types of functions that go into the display method.
For example, glBegin/glEnd, glRotate, glTranslate, glScale, glColor, glVertex, gluLookAt, gluPerspective.
- Understand how the ModelView Matrix is changed with openGL commands such as glLoadIdentity, gluLookAt, glTranslate, etc
- Geometry Primitives:
GL_POINTS, GL_LINES, GL_POLYGON, GL_TRIANGLE and GL_QUADS.
- OpenGL Command Format
Viewing
- Look at Nate Robbins projection.exe (gluPerspective, gluLookAt)
- Camera frame: camera location (i.e. View Reference Point, VRP), view-up vector (VUP), view-plane normal (VPN)
- Perspective projection and perspective transform.
- Terminology:
culling, hidden surface removal,
z-buffer, view frustum.
-
Efficiency Issues - Under standing the basic differences and motivation for items below.
Except for immediate mode, you don't have to know details of openGL code, but you do need to understand
how they differ with respect to openGL client-server model:
- Immediate mode
- Vertex Arrays - understand indexing structure of arrays.
- Vertex Buffer Objects
Geometric Objects and Transformations
- Scalars, Points and Vectors - what are they and what operations are allowed between them?
- Vectors: representation, length, addition, scalar multiplication,
dot products, cross products.
- Matrix Operations: multiplication, addition, determinants, transpose, inverse (of standard
transformations such as rotations, translations,scale), identity.
- 2D Transformations: Translation, scaling, rotation, shear, reflection, projection.
See
web notes.
- 3D Transformations: Translation, scaling, rotation, shear, reflection, projection. See in-class notes and textbook.
- Composition of transformations.
- Homogeneous coordinates. What are they, why are they used?
- 3D Transformations in opengl using the ModelView Matrix and glMultMatrix.
- Coordinate systems - right/left handed
-
Scene graphics - be able to create the scene graph for a particular scene (e.g. solar system,
robotic arm, etc). Review lab asignment.
- Draw picture of object with lengths, angles, type of movement, etc indicated.
- Draw the associated scene graph with the actual transformations (glPushMatrix, glRotate, etc).
- Implement the scene graph in openGL.
-
Setting up controls for Navigation through a scene (if we get to it in class).
[top]
[Study][Home][Schedule]