Nick's Ray Tracer
Click here to browse the picture directory.
Tour: here
Project: Distributed Ray Tracer here.
Implementations
- Camera
- Perspective
- Lens (Pending)
- Geometry
- Sphere
- Plane
- Triangle
- Cones (Pending)
- Textured Triangles
- Textured Spheres
- Lighting Model
- Point
- Rectangular Area
- Spherical Area (Pending)
- Material
- Lambertian
- Metallic
- Dieletric
- Solid Stripe
- Blend Stripe
- Turbulent Stripe (Perlin Noise)
- Color Texture Map
- Normal Texture Map
- Containers
- Scene (No Optimizations)
- Bounding Volume Heirarchy (Using Axis-Aligned Boxes)
- Instance
- Transformations
- Cardan Angle Rotation (Yaw, Pitch, Roll in Degrees)
- Translation
- Scale
- Global Pixel Modifiers
- Scale
- Normalize
- Subtract
- Invert (Pending)
- Tone Mapping
- Gamma Correction
- Clamp Modifier
- File Parsers / Converters / Loaders
- 3DS Max *.ASE Converter
- Stanford's .PLY Converter
- PPM Reader/Writer Methods
- PPM Viewer for Windows (Uses FoxToolkit)
- For Image Conversions (to/from PPM), I used The Gimp 2.2
- Project
- Socket
- Address Lookup
- Client
- Server
- Not implemented:
- Cones
- Polygons
- Spherical Area Lights
- Lens Camera
Credit
- Dr. Reinhard's Notes
- Peter Shirley's Book and Ken Perlin's Website
- Shane Taber, Theo Quarles, and the rest of MCL for 3D Models and Textures
- Jason Gauci for 3D Models
- Adam Campbell (I'm sure I have one of his data files in here somewhere)
- Stanford's 3D Scanning Repository
- Georgia Tech's Large Model Repository
- The website that explained Tangeant Space really well (forgot it!)
- Wherever I downloaded my normal maps (lime.com or something dumb like that)
- Gimp (for converting images)
- Other People I may have forgotton.