CPSC 324, Spring 2004
Information about the Second Test


The second test in this course will take place on Monday, March 29. It will cover everything that we have done since the first test, including labs number 5 through 9. The only reading from OpenGL Programming Guide that we have done in this time is Chapter 3. The major topics for this section of the term were transformations for modeling, viewing, projection, and animation.


Important terms and ideas include:

3D Graphics
3D coordinate system
Transformations:
   Modeling
   Viewing
   Projection
   Viewport
ModelView Transformation in OpenGL
Equivalence of modeling and viewing
The camera analogy for viewing
Orthographic projection
Perspective projection
glMatrixMode(GL_PROJECTION)
glMatrixMode(GL_MODELVIEW)
glLoadIdentity()
glOrtho(xmin,xmax,ymin,ymax,zmin,zmax)
glFrustum(left,right,bottom,top,near,far)
gluLookAt(ex,ey,ez, cx,cy,cz, ux,uy,uz)
glTranslatef(dx,dy,dz)
glScalef(sx,sy,sz)
glRotatef(degrees,axis_x,axis_y,axis_z)
Right-hand rule
Vectors
glPushMatrix()
glPopMatrix()
GLUT Wireframe objects
   glutWireCube(size)
   glutWireSphere(radius,slices,stacks)
   glutWireCone(radius,height,slices,stacks)
Clipping
View volume
Near and Far clipping planes
Hidden line / hidden surface problems
Painter's algorithm
Depth buffer (aka Z-Buffer)
How the depth buffer is used
Hierarchical graphics
Multiple modeling transformations
Hierarchical graphics with nested
        glPushMatrix and glPopMatrix
Scene graph
Traversing the scene graph

Layers in GIMP
Transformations in GIMP
Color Correction in GIMP

Ray-tracing in POV-Ray
Cameras in POV-Ray
Lights in POV-Ray
Scene description language

Building wireframe models in OpenGL
Animation with OpenGL timer() function

Curves in Blender
Bezier curves in Blender
Multi-component curves in Blender
Text in Blender
3D curves and text in Blender
Beveling in Blender
Tracking in Blender
Animation in Blender
Inserting an animation key in Blender
Animated materials in Blender
Path animation in Blender
Animating cameras in Blender
Animating lights in Blender
Empty objects in Blender
Shadows in Blender
Antialiasing (OSA) in Blender

Hierarchical graphics in Blender
The Parent relationship in Blender
Animating hierarchical objects in Blender
Extrusion in Blender
Lathing in Blender
Subsurfaces in Blender
Dupliverts in Blender