CS 354 Computer Graphics

Project #4 – Ray Tracing

Assigned - November 20

Due - December 3 (11:59pm)

Goal

Project 4 deals with the basics of rendering shaded objects in a view dependent mode. As in project 3, you need to build a scene of several objects (at least 5) by reading files containing VRML polyhedral object descriptions (face indexed sets), specify material parameters, and set lights. Each polyhedral object needs to be assigned a diffuse, specular reflectivity, a refractive index, and a transparency value. For this project you can assume all input VRML files are convex polyhedral objects, and shapes can be read in repeatedly, and placed in different locations in your scene. Ive put a few simple convex VRML shapes on the course home page

Use your GUI to specify the viewing parameters (viewpoint, projection plane). Next apply raytracing (as discussed in class, incorporating reflection, refraction, transparency, shadows) for a bitmap resolution of  640x480 pixels, and a ray-tree depth of 3. Display the results of the raytraced color image and demonstrate ability to change viewing parameters and re-raytrace the scene.

Questions Related to Project (10% of project score)

(1). Describe how you would speedup your raytracing, including the ray – object intersection tests if the scene objects were all opaque ?

(2). How would you modify the raytracing procedure if all convex scene objects were packed into a rgular lattice and allowed all light to be transmitted through them. Also each scene object had a transparency value of 0.1 and had a refractive index of 1 (same as air) ?

What to turn in

As for previous projects and as given in the course home page

Extra Credit (5 points)

Speedup your raytracing code by incorporating a partitioning tree of the object scene . You can still assume convex polyhedral objects in your scene.