Thursday, February 01, 2007

Ray Tracing - Project 2

Design Choices

Building on the previous assignment, the renderer adds Lambertian shading and two-sided lighting. The material also casts shadow rays through the image, to give a simulated shadow effect. A base object class holds basic properties for subclasses to implement, which include a sphere and a plane. Another base class is for a material, which gives some basic functionality for coloring depending on the vector.

This is the default scene for Project 2 using the updated rendering

This is the same scene rendered from underneath the default plane. Although it appears bleak, it demonstrates lighting and shadows are correctly ignored and only ambient light is applied

Creative Image

This image was rendered using 1000 point lights to simulate soft shadows. It took over two hours to finish and shows the linear scaling of adding point lights to the scene

Extra Credit 1 - Directional Lights

This image was created using only a directional light instead of two point lights. Directional lights render slightly faster than directional lights since they do not have to compute the light vector (it's saved in the directional light object), and no distances have to calculated

About this project

Time Required: ~10 hours (very approximate)
Difficulty: Easy. Lots of typing and organizing
Code: project2.tar

No comments: