Programming Assignment 4

Assigned 25 March 2002

Due 8 April 2002

Level 1: (if you haven't done it before)

Write a simple ray-tracing system that will render images of clusters of spheres. Synthesize a model of 1 cubic meter volume with about 100 spheres of varying size (i.e. 1cm to 10cm diameter), color (i.e. red, green, blue, cyan, magenta, yellow, white, black), and surface shading properties (ambient, diffuse, and specular coefficients and the specular exponent). Using random centers and radii for the spheres will be a pretty good test but if you want to arrange them to look like something that will be fine too. Light the scene with >=5 point light sources at different places outside the volume. Trace shadow rays to the lights so that shadows are rendered properly.

Your ray-caster should render images from arbitrary viewpoints outside the volume (though going inside is cool too).

Level 2: (if the above is just way too easy).

Once you get that going, you can add interesting features pretty easily: I suggest one or more of these:

As usual send me email with the URL of a web page with pictures and a detailed write up of what you did and how.