In this assignment, both undergraduates and graduates will get comfortable with animation concepts.

Undergraduate students:

Graduate students:


  • You should use git to submit all source code files and a working CMakeLists.txt. Do not submit any build files, binary files, or otherwise. The expectation is that your code will be graded by cloning your repo and then executing:
$ mkdir build
$ cd build
$ cmake ..
$ make

Your code must compile on the lab machines in GS 930. Code that does not compile in this way will be given an automatic zero. You will be given one “warning” for the first instance during the semester that it does not compile, but after a zero will occur If you are working on a different environment, please log into these machines and test your code before submitting.

  • Make sure that this build process produces an executable named prog06. You will need to edit CMakeLists.txt accordingly.

  • Please provide a file that provides a text description of how to run your program and any command line parameters that you used. Also document any idiosyncrasies, behaviors, or bugs of note that you want us to be aware of.

  • To summarize, my expectation is that your repo will contain:

    1. A file
    2. Answers to the written questions in a separate directory named written
    3. A CMakeLists.txt file
    4. All .cpp and .h files that you authored and are necessary to compile your code.
    5. Example scenes
    6. (Optionally) any other test results that you want.


Please see the individual assignment descriptions for a detailed grading rubric.

Extra Credit

Implementing features above and beyond the specification may result in extra credit, please document these in your README.

Furthermore, students in 433 are encouraged to attempt the programming portion of the 533 assignment, and vice versa! For students in 433, completing the subdivision code is worth up to an extra 20%. For students in 533, complete the surface smoothing program is also worth up to an extra 20%.

To submit, please create a repo using the appropriate link above (e.g. a student in 433 would submit their 433 project through the usual 433 link and their 533 project through the same 533 link).