top of page



TOY RAYTRACER
Languages
C++
About
I always have been attracted by how Raytracing works, even before entering college; that is why I started reading some books and slides in my spare time to implement a fully functional Raytracer. It was entirely done in C++, and it was implemented in the CPU using SFML as a helping library. Also, as it may take some time to render these images, I programmed a bot of Telegram in Python that notified my mobile phone when the rendering ended. It was a very fun project and I recommend everyone to implement it!
Features
Here you will find some of the worth to mention features I implemented:
-
Support for boxes, spheres and triangles
-
Support for OBJ models
-
Basic lights
-
Diffuse materials
-
Metallic materials
-
Dielectric materials
-
Anti-aliasing
​​
Future work
There are two main things I would like to make in this Raytracer, but I may leave them for another project, here they are:
-
Implement it with a kdtree
-
Implement the Raytracer in GPU
​
Screenshots/GIFS
Here you have some cool generated images by this Raytracer:




bottom of page