Computer Science 112
The Art & Science of Computer Graphics
Spring 2016, The College of Saint Rose
Studio/Lab 2: A Simple Model
Due: 11:59 PM, Friday, February 5, 2016
Your task this week to develop and render a simple Ambrosia model. It
need not be overly complex, since the goal here is to familiarize you
with using the basic capabilities of Ambrosia: primitive objects,
elementary transforms, and built-in materials.
Procedure and Model Requirements
You may model any scene you wish, but be sure that it meets these requirements:
- Your model should include at least three different object types
(e.g., cubes, spheres, cylinders, cones).
- Your model should use at least each of our fundamental
transformations (scaling, translation, rotation) at least once.
- Your model should consist of objects that use at least three of
Ambrosia's built-in materials.
When you are happy with your scene and lighting, experiment with image
quality. It is normally 8, but setting it to 10 will generate a
higher quality image, at the cost of some extra rendering time. You
can set it with
image.quality(10)
before your camera generates its image.
Submitting
- Email a copy of the source code
for your Ambrosia model (the Python file, which should always be saved
with a .py extension) and your best image (which should
always be saved in PNG format and using a .png extension)
as attachments to terescoj AT strose.edu. Please include a meaningful
subject line (something like "CSC 112 Studio/Lab
2 Submission"). Make sure your name is included in a
comment in your model code, and that you have comments
throughout the source code to make it easier to understand.
- Rename your best image to include your name, then upload it
to the wiki. For example, if you generate an image of a set of building blocks
and your name is Luke Skywalker, you might call your image
"SkywalkerBlocks.png".
- Add a section to your wiki page named "A Simple Model"
that includes a link to your image and a description of your
model that generated the image.
Grading
This assignment is worth 20 points, which are distributed as follows:
>
Feature | Value | Score |
Using at least three primitive object types | 6 | |
Using each fundamental transformation | 6 | |
Using multiple materials | 2 | |
In-code documentation (comments) | 2 | |
Image uploaded to Wiki | 1 | |
New section on Wiki page with brief description | 2 | |
Emailed source code (Python/Ambrosia model) | 1 | |
Total | 20 | |
|