In this project, I practiced ray tracing algorithm.
Summarily, I implemented ray casting detect with triangle and sphere models. Based on triangle ray casting algorithm, complex models can also detect intersection with a ray.
In this project, there are three rays: shadow ray, reflection ray and refraction ray. Therefore, the program works for shadow, mirror and transparent objects.
Here is some screen shots: