This assignment is due by April 30, 2021 by 11:59pm.
This assignment will continue immediately where Lab7 left off - rendering the Mines M.
Part I - Do Some Offline Rendering
Take your completed Lab7 with the floating M and add in more graphics effects. What specific effects are up to your choosing. Some possibilities include:
- Additional object types
- Different illumination models
- Animation
- Textures
- Different material models
The one required effect you must include is reflection and/or refraction on an object or objects.
Your new scene must include at least three different techniques (reflection/refraction/fresnel all count as the same single technique).
NOTE! You cannot simply copy and paste from existing scene template files. You can use them as inspiration but create your own scene.
Part II - Document Your Work
In a separate text document, provide a short writeup on each technique you implemented. For each technique, write a paragraph addressing the following points:
- What the technique is
- How it's implemented/performed
- Is this technique easier in an offline raytraced environment or an online rasterized environment? Why?
Part III - Create Your Website
In addition to creating this awesome looking teapot, modify your webpage from A3 to include several screenshots.
Documentation
With this and all future assignments, you are expeced to appropriately document your code. This includes writing comments in your source code - remember that your comments should explain what a piece of code is supposed to do and why; don't just re-write what the code says in plain English. Comments serve the dual purpose of explaining your code to someone unfamiliar with it and assisting in debugging. If you know what a piece of code is supposed to be doing, you can figure out where it's going awry more easily. (Interestingly enough, this code review of Doom 3's source code says the exact opposite - well written code should require no comments. Well, we don't work at id so we're going to comment.)
Proper
documentation also means including a
README.txt
file with your submission. In your submission folder, always include a
file called
README.txt
that lists:
- Your Name / HeroName
- Homework Number / Project Title
- A brief, high level description of what the program is / does
- A usage section, explaining how to run the program, which keys perform which actions, etc.
- Instructions on compiling your code
- Notes about bugs, implementation details, etc. if necessary
- How long did this assignment take you?
- How fun was this assignment? 1-10 (1 - discontinue this assignment, 10 - I wish I had more time to make it even better!)
Grading Rubric
Your submission will be graded according to the following rubric.
Percentage | Requirement Description |
75% | Graphics techniques properly implemented. |
25% | Accompanying writeup is well written and free of errors. |
Submission
Please update your POV file so it produces an image with the name userName_A4. When you are completed with the assignment, zip together your source code, README.txt, and www/ folder. Name the zip file, userName_A4.zip. Upload this file to Canvas under A4.
This assignment is due by April 30, 2021 by 11:59pm.