Implementing Peter Shirley's raytracing books.
Project requires installed CMake and Conan package manager.
Run these commands from root directory:
mkdir build
cd build
conan install -s build_type=Release ..
cmake ..
cmake --build .
Done.
Final result:
In progress.
Slightly flawed method of scene generation resulted in two spheres right at the center merging together. Rendering this image with 512 samples per pixel using BVH took ~1000 seconds on my laptop's CPU (i5-4200U). Also glass spheres confuse me :|
Implemented simple scene loader from JSON description files. Now I don't have to recompile when I want to slightly modify a scene. Less compilation - more happy feelings :)
3D-checker pattern works by combining two procedural textures. Right now only constant and checker textures are implemented. Scene description loader should check that texture references digraph is acyclic.
Implemented procedural Perlin noise and weird procedural texture.
Implemented image textures.
Implemented light sources. Because light source can be bright enough so that resulting pixel color components can reach values higher than 1.0, I had to add simple tone mapping. I wasn't satisfied with the result, so I tried another approach with desaturation.
Pending.