A basic Ray Tracer that exploits numpy arrays and functions to work reasonably fast compared with a pure Python implementation. The code is written keeping as much readability as possible.
Just clone or download this repo. You'll need to install two packages.
pip install pillow
pip install numpy
See the examples to see how to render the following images:
python example1.py
python example2.py
python example3.py
python example4.py
python example_cornell_box.py
Some animations: https://www.youtube.com/watch?v=vt9vAcZQT4A
A basic version of this raytracer can be found here: https://www.excamera.com/sphinx/article-ray.html
A C++ version of this raytracer can be found here: https://github.com/rafael-fuente/sightpy-weekend-raytracer