Simple Ray-Tracer

Course project

This is an individual project conducted in the 6-th semester of my bachelor, in the course CSE306 Computer Graphics. Starting from scratch with C++, a simple ray-tracer is built, simulating direct and indirect lighting of diffuse materials, reflective and transparent materials, soft shadows, depth of field, and motion blur.

Left image: different materials

2000 rays per pixel. From left to right: reflective, full transparent, hollow transparent.

Middle image: depth of field

2000 rays per pixel. The sphere in the middle is in focus.

Right image: motion blur

2000 rays per pixel. The sphere has an upward velocity.