The solution to the tiny_raytracer can be found within tiny_raytracer/src
.
The idea of the capstone project is based on tinyraytracer, a 256 line C++ ray-tracer - rewritten in Python tinyraytracer.
It uses a scene description of materials, spheres and lights and uses this scene to render an image based on the law of physics (diffuse light, ambient light, reflection, refraction).
The key class is the Vector
class. Even though there is no heritance involved it shows many of the overload methods like __add__
, __sub__
.
Implementing the Vector
functions is the primary exercise of the first course. Once all unit tests (contained in test_vector.py
) succeed it should be safe to continue.
The presentation is shared here: https://1drv.ms/p/s!AlQXFUn0ctPihfpV2g2S6BF9wa2sJA