Computer Science 112
The Art & Science of Computer Graphics

Spring 2016, The College of Saint Rose

Final Project
Proposals due: 4:00 PM, Friday, April 22, 2016
Gallery Opening: 9:00 AM-12:00 PM, Friday, May 6, 2016
Final submission: 8:00 AM, Friday, May 6, 2016


Over the last month of the semester, you will be developing a substantial Ambrosia model that demonstrates what you have learned.

You have a great deal of freedom in choosing what to model for this project. However, it must be an effective demonstration of your modeling skills. Projects of appropriate scope and difficulty might involve:

In any case, the complexity of your model or models could result from a focus on one or just a small number of highly-detailed objects in a relatively simple scene, or could result from the development of a more elaborate overall scene.

Choosing to produce an animation will demonstrate your willingness to spend extra time in careful planning, but there is no "extra credit" for choosing this option. Any of the above can result in a good project (and hence, a good grade).

Your project should include substantial new work. You are encouraged to use your previous labs or class shared models, but be sure that the bulk of your work is new. Any work borrowed from your own previous labs, class examples, and classmates must be clearly cited!

The final project will account for 20% of your course grade, as much as all of the other studio/labs combined, so the amount of work is expected to be far more significant than what you have done for any other individual assignment.

The Proposal

By 4:00 PM, Friday, April 22, 2016, submit a project proposal.

Your proposal should answer the following questions:

  1. Of all of your lab models developed this semester, which two do you think were most successful and why?
  2. What modeling skills (e.g., materials, realistic object design) do you think you need (or would like) to spend more time developing?
  3. What do you want to do for your final project? Include drawings if you wish.
  4. What aspects of your proposed project would address those skills you mentioned in question 2?

Everyone should arrange to meet with me in person (may substitute an email exchange if an on-campus meeting does not work) no later than April 20 to discuss your proposal and to finalize a "grading contract" for your project based on your proposed project. We will set goals and an implementation schedule for your project. Your grade will be based, in part, on how completely you meet these goals (see below).

Using Shared Models

You are encouraged to take advantage of shared models for this final project, both by using shared models provided by your classmates and by developing some of the components of your project as shared models.

Using shared models from your classmates is simple enough, as described in the shared model assignment.

You are strongly encouraged to develop objects for the final project as shared models as well. This has the advantage of separating out the complexity of your overall project across multiple models in multiple .py files. It is also an excellent opportunity to earn the bonus points offered in the shared models lab for extra shared model submissions. And of course, you would be making your models available to current and future students.

Lab Usage and Rendering Time

As the end of the semester approaches, the computer labs can become very busy. As your models become more complex, rendering times will increase. Plan ahead!

Here are some suggestions and requests:

Final Submission

Submission is similar to the procedure you have used for Studio/Lab assignments all semester:

  1. In a comment at the top of your main model file, describe how your project has met the goals we agreed to in your grading contract.
  2. Submit as an email with attachments for your nicely formatted and appropriately commented model file(s), any necessary surface or grain image files needed to render your model, and the images it generates. If your project consists of multiple .py files, be sure to indicate clearly which is the main file or files that should be executed to generate your images and/or animations.
  3. Create a new section of your wiki page, where you describe your project and include a number of images that you have produced. Include both "artistic" information about what you're trying to model and technical information about how you convinced Ambrosia to do it.
  4. Clearly cite any usage of class examples and shared models, both in comments in your model file and on your wiki entry.

Demonstrations (our "Gallery Opening")

You will have a chance to show off your work on this project (in addition to the work you've done throughout the semester) to classmates and guests at a "gallery opening" to be held during our scheduled final exam slots, 9:00 AM-12:00 PM, Friday, May 6, 2016, in Science Center 469A. Note that this time encompasses part of the slots for each of our sections for this course this semester. You are encouraged to attend the whole time if you can, but may attend only the part in your section's time slot if you have a conflict.

Grading

The project is graded out of 100 points, which are distributed as follows:

> FeatureValueScore
Proposal description of project 5
Proposal answers all required questions 3
Model code documentation 10
Model code style 10
Wiki presentation 8
Gallery opening presentation 4
Grading contract 60
Total 100

Model code documentation includes the comments within the model, and must address specifically how the project meets the terms of the grading contract.

Model code style includes the use of good names, object hierarchy, shared models, defined names, functions, etc..