3D Ray Tracing Engine
May 2019
I wrote this engine as a way to further understand 3D computer graphics. Additionally, I was learning about vectors and planes in my pre-calculus class, which is what got me to finally begin the project. I was not intending to use the program as an actual graphical engine, I just wrote it to experiment with 3D graphics and the vector math that I was learning in school. The program takes a single .obj as an input. The engine runs on a single processor thread in Python, as such it is very slow. I intended to add more complex lighting and reflections, but I decided not to continue with the project, because it takes a very long time to render one frame with even slightly complex meshes even at very low resoluton. The shading of each face is based off of the angle relative to the plane of the camera.
The example is an animation of an icosphere rotating to demonstrate the engine.