Output Normalized z-buffer


Implemented multi-threading with std::thread.

Machine Specs

Render time 0:00:00
Processor 1.4 GHz Intel Core i5
RAM 4 GB 1600 MHz DDR3
Graphics Intel HD Graphics 5000 1536 MB

Some fails

The transformation between camera coordinates and world coordinates needs to be explicitly created using the camera parameters. If that's not done, the first example still works (because the transform is identity), but the test case doesn't.

When shooting rays, it's necessary to set the y-axis for the screen as +ve upwards, otherwise you get something like this: