Program Final

Program Final: Interactive Graphics Application

Due: Thursday, December 16th, 2010 (before final exam time)

For the final programming assignment of the course, you are to work with 1 or 2 other people to create an interactive graphics application using the computer graphics techniques you have developed thus far. You must have the following components:

  1. Animated models:
    • These can be vehicles, persons, builders, etc.
    • Some models must be composed of multiple polygons or 3D objects.
    • Some models must be animated.
    • Some models must move around in the scene.
  2. Camera views:
    • You must include multiple camera angles.
  3. Lighting:
    • You must use a light source.
    • You must set the appropriate material properties.
  4. Controls:
    • Your application must be interactive.
    • This means you must allow for objects in the application to be manipulated with either the keyboard or mouse (or both).
  5. Textures:
    • You must use textures on some of your models.
    • Some of the textures must be those not given as a part of class labs and assignments (ie. find your own textures).
  6. Shaders:
    • You must use shaders for some models in your application.
    • You may use shaders discussed in class, but at least one shader must be created by your group (remember you can use shaders for all sorts of things including lighting models).
  7. Hierarchal Objects and Instances:
    • You must have some objects that are composed in a hierarchical fashion.
    • You must be able to instance, that is use multple versions of the same model in your program.
    • You do not have to use a scene graph, but one is recommended.
  8. Reproducible:
    • We must be able to compile and run your application on the RHEL5 machines used in lab.
    • Document how to build, run, and use your program. If you have keyboard controls or mouse controls explain what they are (perhaps open a second window that shows these controls or have a loading screen explain them).
  9. BE CREATIVE!
    • You may include code from previous assignments and labs, but must add something unique to any imported code.
    • Have fun.

Grading Rubric

Grading for the final project is out of 100.

Submission

Each group member should submit source code, Makefile, and README to dropbox:

/afs/nd.edu/coursefa.10/cse/cse40166.01/dropbox/<afsid>/pgm_final

The README for each group member must mention the other members of the group and describe their own contributions to the project.