A Quick and dirty raytracer.
This raytracer is made following the book «The Ray Tracer Challenge» by Jamis Buck.
It is writen in C++ with no STL and use LodePNG to output PNG file.
From chapter 05 - Sphere intersections:
From Chapter 06 - Phong shading:
From Chapter 07 - World / Camera / Scenes:
From Chapter 08 - Shadows:
From Chapter 09 - Planes:
From Chapter 10 - Patterns:
From Chapter 11 - Reflections, Transparency & Refractions:
Bonus: Zooming on a reflective ball:
Zooming on a reflection on that ball:
From Chapter 12 - Cubes:
From Chapter 13 - Cylinders:
From Chapter 14 - Groups & Bounding boxes:
Bonus (from the forum):
(about 1min render time using OpenMP on a 2.6Ghz Core i7 3720QM)
Bonus chapter - Soft shadow / Area light
Bonus chapter - Texture mapping