Worked on a few different ray/path tracing renderers for personal and academic purposes.
Used Java for older long-term project, C++/OpenGL for newer code.
Initially experimented with path tracing by following "Ray Tracing in A Weekend".
Wrote a more extensive Whitted-style ray tracer for my CSCI-711 term-long project.
Wrote a simpler ray caster with C++ and OpenGL compute shaders for better performance later on, as part of a different course.
Should have gone with C++ and OpenGL for the term-long project as well; would have significantly improved performance.
Would have loved to spend some additional time implementing more advanced concepts; additional spatial data structures, photon mapping, etc...
Ray tracers are a fun little project, great for learning more about both graphics and software design.
Term-long raytracer based on a simple but extensible software design.