And the Rest

 

Fish Eye Lens (Wide Angle)

Fish Eye Lens (a.k.a Wide Angle Lens) is a camera lens used to distort the image such that is more visible.

This objective was completed by modelling the lens using refraction and placing the camera within the lens.

Rendered Without FishEye

Rendered With FishEye

Multi-Threading

Statistics (using unix time command)

16 threads: 1099.592u 0.520s 4:36.77 397.4% 0+0k 0+40io 0pf+0w

8 threads: 1131.086u 0.532s 4:57.46 380.4% 0+0k 0+40io 0pf+0w

4 threads: 1099.508u 0.560s 5:17.30 346.6% 0+0k 0+40io 0pf+0w

2 threads: 1122.726u 0.432s 10:43.99 174.4% 0+0k 0+40io 0pf+0w

1 thread: 1107.689u 0.436s 18:28.08 100.0% 0+0k 0+40io 0pf+0w

In making the Image object’s in c++ volatile it seemed to have resulted in non-linear improvements in rendering time with increased threads!