Programming Assignment 4
Due 5:59PM on Tuesday, April 27
In this final assignment you will implement a rendering system. You can
choose one of three options:
- Radiosity Rendering. Implement your choice of
radiosity algorithm for quadrilateral models. Demonstrate your program
on
the standard Cornell Box and other models of your choice. Information
relevant to this project is available in:
- Cohen and Wallace, Radiosity and Realistic Image
Synthesis, AP Professional,
ISBN 0122861604.
- Photon Mapping. Implement a photon mapping
renderer
for quadrilateral or triangular models. Demonstrate your program on the
standard Cornell Box and
other models of your choice. Information relevant to this project is
available in:
- Non-photorealistic Rendering. Implement a
non-photorealistic rendering system. Implement a system that can
convert
color computer graphics images and color digital photos to artistic
renderings using one of algorithms described in:
Demonstrate your program on 4 input images of your choice.
Submitting Your Report
By the deadline, send the URL for your report WWW page to the grader: Bill Mullally
What You Turn In
Create an HTML document "p4.html" that describes your project.
In the first part of the report, describe the algorithms used in your
rendering implementation. Give an
overview of how your program is structured, and provide a module
diagram.
Be sure to describe the algortihms employed in sufficient detail for
someone else to implement your system. Be sure to discuss the
assumptions
and weaknesses of the particular technique employed. How does your
program
fail and why? Discuss the strengths and weaknesses of the methods you
implemented, and how you would improve the program if you had more
time.
Please comment on issues of computational complexity vs. accuracy of
algorithm employed.
Include output images from your system.
Include at least four images showing results obtained with your
system.
Finally, include your source files, program executable, and
Makefile. Please
be sure to tell us what computer platform (e.g., Windows, Linux,
Solaris) your tool runs on.
The report you write should be clear and to the point. The code you
submit should be well-structured and clearly documented.