Assignment 0. Due September 13. The goal of this assignment is to make sure that you have your programming environment setup for the future assignments. Install GLUT on the computer you are going to use to do the assignments. Compile the test program and send a message to to tell us that you have succeeded. No points will be given for this assignment; however, if we do not hear from you on time, up to 20% may be taken off the next assignment.

Assignment 1. Due October 3,11.59pm. Transformations and basic OpenGL drawing. Additional notes.

Assignment 2.Due October 17, 11:59pm; dedline extended to October 19, 11:59pm. Image processing.
Sample code to read/display images: tga.h, tga.cpp, images.cpp.
To convert images you can use ImageMagick" . You can also use ImageMagick's libraries instead of provided code to read and write .tga files (and many other formats including most common). Test images:
checkerboard.tga Scale this image with factors 0.61 in x and 1.0 in y, 1.0 in x and 0.61 in y and 0.61 in both directions; use Mitchell filter for all operations. In addition perform the last operation with the hat filter. Scale the image 1.5 times using box and Lanczos filter, and 2 times using hat filter (6 images).
mandrill.tga (This is a classic image processing test picuture). Smooth and sharpen this picture. Repeat smoothing three times. Run the edge detection algorithm. (4 images).
empire5th.tga Smooth and sharpen this picture (2 images).
wave.tga (This is a painting by K. Hokusai called "In the Hollow of a Wave off the Coast at Kanagawa".) Run the edge detection algorithm on this image. (1 image).

Assignment 3 due November 7, 11:59pm. Textures and lighting. A web page with many sky maps Crinity sky maps . Each map consists of 6 images for 6 sides of a cube.

Assignment 4 due November 21, 11:59pm. Meshes and subdivision. Trackball sample code: cvec4t.h, hmatrix.h, trackball.cpp.
Several simple OBJ models for testing: cube.obj, tetrahedron.obj, icosahedron.obj, dodecahedron.obj, spaceship.obj.

Assignment 5due December 5, 11:59pm. Ray tracer I POV Ray parser code

Assignment 6due December 19, 11:59pm. Ray tracer II