While working at the University of Derby as a Lab Assistant alongside the lecturer, Dr. Minsi Chen, I had to assist in the teaching of raytrace rendering to lower years doing graphics programming. Using a base framework that Minsi provided, students had to implement the intersection tests, lighting equations and so on to pass the module. During teaching this, I had learnt a lot about the theory of raytracing and decided to emulate the module and take the provided framework and implement the features as a side project, but to also extend the project to be more optimised and feature rich. As being a software raytracer, the draw times for the project are incredibly slow, which is something I intend to reduce.


  • Plane, Triangle and Sphere ray intersection.
  • Diffuse and Specular (Blinn-Phong).
  • Shadows.
  • Reflection.
  • Refraction.
  • Toggleable Nearest Neighbour anti-aliasing.


This slideshow requires JavaScript.


Coming Soon – WIP