Cpu Recursive Ray Tracer
CSE167 - Computer Graphics - Final Project
Within CSE 167: Computer Graphics, I developed both a (1) bezier and bspline 3d modeling program, and (2) a CPU-based recursive ray tracer
3d Curve Modeling Program
Using OpenGL and C++, I constructed a program capable of both visualizing B-Spline and Bezier Curves, as well as revolving the curves to generate a mesh, arbitrary 3rd transforms to the meshes, and rotating the camera view (through transformations of the ModelView matrix)
CPU Recursive Ray Tracer
Using C++, I, along with my partner, Jett Bui,, also constructed a recursive ray tracer.
The raytracer assignment originally featured basic functionality, including creating scenes of geometric primitives (triangles, spheres) with reflective raytracing. Using optimizations of octree and multiprocessing, we were able to achieve a 160x speedup for complicated scenes (including the Stanford Dragon)
As a part of extensions of the project, we added:
- Normal Mapping
- Environment Mapping (skybox cubemap)
- Texture color mapping w/ Nearest-Neighbor and linear interpolation
- Anti Aliasing
- Soft Shadows
- Snell’s Law Refractions