5da0c1018236a1d6905b5b061a0c8c42c28bd4f6
The idea is to reorganise objets to take use of the them to prevent most object to be intersect if they are not likely to be on the ray path.
DoRayMe
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 and use them as texture, also use NanoJPEG to use jpeg file as texture, and can use use Lua 5.3 for 3D pattern definition and more to come on the Lua side later..
Examples outputs
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:
Bonus:
From Chapter 14 - Groups & Bounding boxes:
From Chapter 15 - Triangles, Wavefrom OBJ files - Smooth trianges:
From Chapter 16 - Constructive Solid Geomety:
Bonus (from the forum):
Merry Christmas
(about 1min render time using OpenMP on a 2.6Ghz Core i7 3720QM)
Bonus chapter - Soft shadow / Area light
Without jitter:
With jitter:
Bonus chapter - Texture mapping
Spherical mapping:
Cylindrical mapping:
Aligncheck plane:
Cubical mapping:
Image mapping:
Skybox:
Description
Languages
C++
96.5%
CMake
3.2%
C
0.3%

























