To make sure that you are really learning the material, there will be a midterm and a final. To help you prepare for the midterm and final, there will problem sets and some practice test questions done in class.
Here is the formula I propose to use in determining grades:
Project 1: 10%
Project 2: 15%
Problem set 1: 2%
Midterm: 15%
Project 3: 15%
Project 4: 15%
Problem set 2: 3%
Final: 25%
Alternative formulas many be introduced as the quarter progresses to compensate for unforeseen events, for example a project which almost no one manages to finish. In that case, your grade will be determined by whichever formula gives you the better grade.
There are many ways to get an A on a project, and hopefully one of
them will always work for you. You could add technical features to the
program, using a wider range of OpenGL commands or coding up more
advanced algorithms. Or, you could use the core functionality to make
an
interactive program that is fun to use and attractive to look at.
Grading creative projects is a little more like grading an essay in an English class than grading a multiple choice test. Two projects with the same technical content can get different grades, for instance if one runs more smoothly than the other, or if one has a model where everything fits together well and the other has little gaps, or if it looks like one author combed the Web for exactly the right textures and the other looks like the author chose the first ones that she found.
These decisions are judgment calls; they will be up to me and the reader. We will work together to make sure that the judgment calls are made as fairly as we can, but we will never overrule a judgment call after grades have been assigned.
When in doubt about how an idea for what to do with your project will be valued, ASK me, the TA, or the reader. After you do the work and hand in the project, it is too late to disagree with our judgment.
Since this is a graphics class, projects will be graded on their
graphics components. This includes visual design and the elegance of
your algorithms and programming style, but does not include fancy
interfaces; elaborate menus or an interface language with a parser
will not get you extra points.
Your project will be graded on the machines in Kemper 67. If your
program does not compile and run on these machines it will get a zero.
So if you plan to do most of your work elsewhere, be sure to check that
your program compiles on the machines in Kemper 67 as you go along.
Projects late by one day incur a 5% penalty (weekend days count).
Each additional late date incurs an additional 10% penalty.
Partial credit on the midterm and final is given entirely at my
discretion. I will consider regrading questions if asked to do so
within one week of when papers are returned, but not afterwards.
You are encouraged to talk to the other students about the projects and homeworks. You are NOT allowed to copy their code or their solutions. What constitutes copying? If you are typing or writing while looking at the other student's work, you are copying. Obviously, if you are cutting and pasting from their file, you are copying. Get the material into your head, then go and type or write yourself. The goal of the course is to get knowledge into your head, not onto paper or into a file.
You may copy from the book, or from handouts or your lecture notes.
You may (in fact you may have to) copy some elements of a project from the Web, including 3D models, textures, and maybe code to read or convert them. We will give you a good idea of what these elements are; when in doubt, ASK. Always acknowledge the source of this copying in the documentation for your project, giving the URL. We will give you more credit in your project grades for finding great Web resources if you make them available to the rest of the class through the newsgroup well before the project is due!
You may not copy code for the core of your project from the Web, even if you acknowledge the source. Again, look all you want, understand, and then go type it in yourself.