mRay



a CPU-Based Ray Tracer

Languages / Libraries Used: C++, OpenGL
Team Size: Individual
Personal Role: Everything
Development Time: ~ 8 weeks

Description: This was the term project for my Computer Graphics 2 course. Over the 8 weeks of work, we learned about light theory and how it propagates through 3D space. With every week's worth of lecture material, we were tasked with independently implementing the material in that section into our own personal ray tracer, written entirely from scratch in the language we chose.

For this project I chose to stay where I had the most experience and where I felt the best performance would be achieved: C++. The entire application was written by myself in C++ using only the standard template library and OpenGL to display pixels to the screen. All required math and physics classes and libraries were also created by myself during this development period.

Here are some shots of the final application. More can be found on my linked picasa web album, or around this blog as it originally documented this project's progress.

Full multi-sampled reflections + refractions. Partial transparent shadowing
Full multi-sampled cone-reflections

You can get at the GitHub repository here: mRay Github Repository