t i m - w o o d . n e t

 

Ray Tracer

Ray Tracing is a way of producing 3D images, and is especially good for high resolution images with complex lighting and reflection effects.



 

The Basics

Ray Tracing works by calculating a ray that goes through the camera position through every pixel in an image. The ray is then tested against a scene description to determine which objects the ray intersects. Then, the color for that pixel of the image can be computed based on the opacity and lighting of the object hit.

For more detailed information on Ray Tracing, visit this site.


A ray projected into a scene

The Program

I originally wrote this program for a computer graphics course. We were only required to display basic shapes, but since my program could also do advanced lighting, shadows, and reflection, I recieved a score of 180 out of 100.

The program came to my mind again while taking a course on Parallel and Distributed programming. Ray tracing is a very processor intensive operation, so being able to divide the work up between multiple computers makes a great deal of sense.

Although it could still be greatly refined in terms of simplifying the amount of data transfered between processors, the algorithm did quite well when implemented on a grid of 8 computers.

 

Sample Image

Kind of dark, but shows reflections, lighting, shadows, etc.

t i m - w o o d . n e t