CS 6620 - Fall 2012 - Ray Tracing for Graphics

Project 9 - Soft Shadows and Glossy Surfaces

In this project we will add support for soft shadows and glossy reflections to our ray tracers.

Requirements

XML Scene Format

In the XML scene format we specify glossy reflections/refractions by adding a "glossiness" value for the "reflection" or "refraction" tag of the Blinn material. If the glossiness is not specified, it should be regarded as zero, which means no glossy reflections/refractions. Notice that the "glossiness" value for the "reflection" tag is separate from the "glossiness" of the Blinn shading.

<material type="blinn" name="ground">
   <diffuse r="0.3" g="0.3" b="0.3"/>
   <specular value="0.1"/>
   <glossiness value="50"/>
	<reflection value="1.0" glossiness="0.5"/>
</material>

We specify area shadows by adding a "size" value to point lights. This size value effectively converts the point light to a spherical area light.

<light type="point" name="pointLight">
	<intensity value="1.0"/>
	<position x="-50" y="-100" z="50"/>
	<size value="5.0"/>
</light>

You can use this test scene to verify that your implementation is correct.

Resources

Here is an example implementation of the XML parser using TinyXML.

Optional Feature Suggestions

Student Project Pages



_