Kansoku is a rewrite of a real-time raytracer I wrote in Java a while ago.
It uses a simple raytracing algorithm to project a three dimensional scene to a two dimensional screen, while processing shadows.
Although fairly optimized, further optimizations could be done by using a bounded volume hierarchy to store objects.