For COMP 557 course, I wrote a ray tracer from scratch. My code supports hierarchy and Instances. I implemented
- Ray generation
- Sphere class, ray-sphere intersection, and UV Mapping for spheres
- Blinn-Phong shading
- Shadows and multiple light sources
- Plane with checkerboard pattern, and ray-plane intersection
- Bounding boxes and ray-box intersection
- Ray tracing triangular meshes, ray-triangle intersection and acceleration structure (with a single b-box)
- Anti-aliasing with stochastic super sampling, and jittering.
Some Images:
Future Work
I am planning to extend my work with reflection, refraction, environment maps, and motion blur. I am also planning to convert this project a ray tracing tutorial from scratch.