Extended Ray Tracer
Daniel Bigham - Fall 2002

 

Texture mapping onto a sphere. (sphere_texture.gr)

 

Texture mapping onto a box. (box_texture.gr)

 

Texture mapping onto a cylinder. (cyliner_texture.gr)

 

Texture mapping onto a cone. (cone_texture.gr)

 

Transparency mapping. (transp.gr)

 

Bump mapping.

 

Reflection. (refl.gr)

 

Constructive solid geometry involving a sphere:
UNION, INTERSECTION, DIFFERENCE (sphere_csg.gr)

 

Constructive solid geometry involving a cylinder:
UNION, INTERSECTION, DIFFERENCE (cylinder_csg.gr)

 

Constructive solid geometry involving a cone:
UNION, INTERSECTION, DIFFERENCE (cone_csg.gr)

 

Constructive Solid Geometry (csg.gr)

 

A test scene rendered with two point light sources. (balls1.gr)

 

The same test scene rendered with two area light sources. (balls2.gr)

 

A sphere with an index of refraction of 1.5. (glass_sphere.gr)

 

A sphere with an index of refraction of 1.3. (water_sphere.gr)

 

A convex lens. (convex.gr)

 

A concave lens. (concave1.gr)

 

A lens which is concave on the incoming side and convex on the outgoing side; the lens of the overhead projector which I modelled. (proj_lens.gr)

 

Photons which have been mapped onto a square polygon. (photon1.gr)

 

A photon map which has been interpolated to remove dark pixels. (photon2.gr)

 

A demonstration of the gr_special_refractor TCL command. (photon3.gr)

 

A cone shaped light within the projector casts photons onto a mirror, shown here in red. The mirror reflects these photons upward. (proj1.gr)

 

A refracting surface just below the projector's surface, shown in red, focuses photons onto the lens. Simulating this surface required specialized refraction logic, accessed via an additional TCL command: gr_special_refractor.

 

The completed projector. The lens and mirror are shown floating in space since creating a supporting structure that doesn't interfere with the optics of the projector turns out to be an exercise in its own right. (proj3.gr)

 

An image projected onto a one million pixel texture map using four million photons. Notice the graininess, which is the result of dark pixels; not all pixels in the texture map are struck by photons. (az1.gr)

 

A secondary algorithm is used to clean up the texture map. (az2.gr)

 

A demonstration of subtractive color using three colored discs. (tri.gr)

 

A special guest appearance by Steven Mann! (mann1.gr)

 

My ballpoint pen scene (pen.gr)
  • Pen modeled using CSG (21 primitives)
  • Pen makes use of transparency
  • Pen logo makes use of transparency map, bump map
  • Wood texture, reflection of pen/cup