Final Study Guide, CS354 Spring 2013

 

I.  Transformations, Matrices and Geometric Modeling

 

Clipping and intersections - determining what is in the viewable region, half-space tests (lecture 8)

 

Projection matrices - orthographic vs. perspective transformations, what does each transformation mean conceptually? (lecture 8)

 

Affine transformations - 2D or 3D, translation, scale, rotate, sheer, be able to recognize affine transformations in matrix form or equation form (lectures 5-7)

 

Modelview matrices - performing transformations in turtle graphics and transformations of fixed points, be able to do both (lecture 8)

 

Viewport transformations - transforming coordinates from modelspace to screenspace (lecture 8)

 

Geometric modeling - glut objects vs. user-modeled objects, surfaces of rotation, 3-D extrusions, difference between modeling a surface vs. modeling a volume, triangulation, quadrilaterlization, Barycentric coordinates, be able to sketch a scene if you are given the viewpoint and the location of objects in world coordinates (lecture 2-4,10)

 

Matrix Operations - practice matrix multiply, matrix add and subtract (lectures 5-6)

 

 

II. Fractals, Subdivision, and Recursion

 

Fractals - fractal dimension, know what the more common fractals look like (i.e. Koch snowflake), know how to write and interpret an L-system (axioms and rules) (lecture 9)

 

Curve and Surface Subdivision - Four-Point, Doo-Sabin, Catmull-Clark, Loop, be able to perform each if the rules are given, know what happens to curves and surfaces when subdivision schemes are repeatedly applied (lectures 10-12)

 

 

III. Lighting Models and Ray Tracing

 

Color models - RGB, CMY, YIQ, know the basic differences between each (lecture 13)

 

Polygon Shading - Gouraud shading vs. Phong shading, know how to perform both (lectures 14-15)

 

Lighting Models - ambientLambertian (diffuse), Phong (specular), know how to perform all three (lecturs 14-15)

 

Ray tracing - how is it different from z-buffer?  what effects are easier to implement in a ray tracer? know about all the steps in a simple ray tracer (i.e. Project 4), such as how to generate the initial rays that originate from the eye, how to calculatate sphere / ray intersection, and how to calculate plane / ray intersection, how to generate reflection and refraction rays, and the differences between point lights and directional lights (lecture 16)

 

Vector Operations - practice add, subtract, dot product, cross product, scalar product, find length, find direction, normalization

 

 

IV. Miscellaneous Topics

 

Radiosity - what is the goal of radiositywhat are form factors?  be able to do simple form factor algebra problems (see Illumination V lecture) (lecture 17)

 

Texture mapping - how is texture mapping performed? how is bump mapping related to texture mapping?  be able to map simple textures using OpenGL calls (lectures 18-19, 22)

 

Visibility algorithms - back-face culling, painter's algorithm, z-buffer, advantages and disadvantages of BSP trees over z-buffer (lecture 20, 23-24)

 

Anti-aliasing - why is it needed?  in general, what algorithms are used to address the problem? (lecture 21)

 

 

V. Other Course Material

 

Projects - look over any questions or concepts you did not understand and compare with the posted solutions

 

Midterms - look over any questions or concepts you did not understand and compare with the posted solutions