The best learning comes from doing, thus this course requires a number of programming assignments. The assignments will focus on two major areas: Ray Tracing and Procedural Shading. Starting with the first week, assignments will be given on a weekly basis. In most cases, the assignment will be due the following week.
The following rules apply to programming assignments:
Programming assignments are collectively worth 100 points. Points are distributed as follows:
| Assignment | Assigned | Due | Cutoff | Points |
| Ray Tracing 1: Setting the Scene | December 3, 2008 | December 10, 2008 | December 19, 2008 | 10 |
| Ray Tracing 2: Camera Modeling | December 10, 2008 | December 17, 2008 | December 26, 2008 | 10 |
| Ray Tracing 3: Basic Shading | December 17, 2008 | January 7, 2009 | January 16, 2009 | 10 |
| Ray Tracing 4: Procedural Shading | January 7, 2009 | January 14, 2009 | January 23, 2009 | 10 |
| Procedural Shading using the RenderMan® Shader Language | January 14, 2009 | February 16, 2009 | February 18, 2009 | 10 |
| Ray Tracing 5: Reflection | January 21, 2009 | January 28, 2009 | February 6, 2009 | 10 |
| Ray Tracing 6: Transmission | January 28, 2009 | February 4, 2009 | February 13, 2009 | 10 |
| Ray Tracing 7: Tone Reproduction (final code due - submit to myCourses) | February 4, 2009 | February 11, 2009 | February 20, 2009 | 10 |
"Cutoff" dates are the last dates on which submissions are accepted. Usually, this is the ninth day after the due date; however, note that assignments due late in the quarter may have shorter (or non-existent) late periods.
Each assignment (except for the first) will have associated with it an extra component which will be worth 5 points. In order to obtain the maximum score of 100 on the assignment portion of the course, you will need to complete at least four of these extra components. Note that even if you complete more than four of these extras, your total score for the programming assignments will not exceed 100.
As it is extremely important to continue to make progress as the course progresses, late deliverables will be penalized 10% for each day late. There is an exception to this rule: if you anticipate any problems with meeting deliverable deadlines, see me well in advance (ideally, at least one week) of the deadline that might be missed, and we can attempt to work out alternate arrangements.