Overview | Credit |
Art contest | Late policy |
Do not share code | Facilities |
What to submit | How to submit |
Number | Name | Due date | Team Size | Points | Results |
---|---|---|---|---|---|
6 | Final Project | Jan 15, 10.30am | 4 | 25 | |
5 | Ray Tracer | Dec 13, 11.59pm | 2 | 20 | Results |
4 | Curves | Nov 22, 11.59pm | 2 | 20 | |
3 | Scene Maker | Oct 29, 11.59pm | 1 | 15 | |
2 | The Scene | Oct 15, 11.59pm | 1 | 15 | Scene |
1 | Morph | Oct 4, 11.59pm | 1 | 15 | Morphs |
0 | Enroll | Sep 23 | 1 | 1 | Class list |
The table above indicates the number of points possible for each project. The assignments have two kinds of features: required and optional. The required features account for about 3/4 of the possible points, so it is expected that you will complete all of the required features as well as some of the optional features.
This system allows you to choose which (optional) features you are most interested in tackling. However, you will not receive points for optional features unless you have at least attempted to implement the required features first. You may actually implement more optional features than are necessary to acquire "full credit", in which case you will be given extra credit. However, extra credit points are harder to acquire than "regular" credit, so for example in Project 1 it is more difficult to go from 15 points to 17 points than it is to go from 13 points to 15 points.
For optional
features you may choose to implement items suggested on the handout, or
you may think up features on your own. In principle, there is no limit
to the number of points you could receive on an assignment, but the
more points you receive the harder it is to acquire even more (and in
practice there are only 24 hours in a day).
Art contest
For each of the projects (except 0) there will be an art contest. This
falls under the domain of "optional features" for the homework
assignments, but it is mostly for fun. There are two categories in
which you may submit art work: "general" and "characters".
In the general category you may submit any art work of any size that somehow used your program from the project.
For the character category, you should submit an image of a specific character (the letter `C' for Project 1, `O' for Project 2, and so on) in an image that is 100 pixels wide by 200 high.
For each category, a winner will be chosen each time and posted on the web pages. You may submit in both categories if you wish, and the total number of extra points that you may receive for art work is 2, but to get 2 points it better be pretty amazing.
Late policy
Assignments are due at 11:59pm on the due date. Late assignments are
marked down 1/3 per day. One minute late is the same as one day late.
You are given 1 bonus day to cover the first time you are 1 day late.
Teams may submit projects 4 and 5 late as much as the average of their remaining bonus days. Project 6 will be demoed in finals week, and therefore cannot be late.
Exceptions will be given only in extreme circumstances, only in advance, and only by Professor Finkelstein.
Do not share code
All work must be your own. You may discuss the assignments with your
classmates but you must write your own code. If you borrow code from
any source, be it Graphics Gems, or somewhere on the web, or a friend,
or anything else, you must state this in your assignment. Failure to
do so will result in disciplinary action. Needless to say, team
members are allowed to share code among each other on Projects 4
through 6. If you have any question about what you can and cannot do,
please contact Professor Finkelstein.
Facilities
We will be using the facilities of
MECA (E-quad, room E423), the former ICGL,
for the programming assignments. Please do
not use the graphics lab in the CS building for working on your
projects. It is intended for research projects only.
What to submit
You should turn in complete source code for your project as well as a
writeup. The writeup should be a HTML document called writeup.html
which may include other documents or pictures. It should be brief,
describing what you did, what you have implemented, what part works and
what doesn't, and how to compile and run your program.
Make sure the source code compiles on the MECA workstations. If it doesn't, you will have to attend a grading session with a TA, and your grade will suffer.
How to submit
Submit your solutions to the programming assignments electronically
using the following command:
/u/cs426/bin/submit <number> <files>
<number> is the assignment number and <files> is the list of files for that assignment. For example:
/u/cs426/bin/submit 31 readme makefile main.c strings.c
submits the files readme, makefile, main.c, and strings.c for a fictitious assignment 31. The submit command copies your files to the directory /u/cs426/submit/<userid>/<number> and lists all the files that you have submitted for that assignment. You can run submit more than once to update previously submitted files, or to add files.
Use the command unsubmit to remove one or more files from your submission. For example:
/u/cs426/bin/unsubmit 31 main.c
You can omit the /u/cs426/bin/ prefix if you add it to your path.