Ray-Tracer

Will Gueble

2017/09/28

Categories: Ray-Tracer Tags: OpenGL

When my computer was stolen back in early 2016, I lost almost all of my files from the days of my undergraduate studies. It wasn’t until recently, with all of time I’ve spent familiarizing myself with OpenGL, that I decided to attempt to reconstruct my years-old Computer Graphics project.

The original application ran on a 32-bit Linux VM, so I knew that it would take a little bit of tinkering to compile and run on my machine. Luckily, I have learned a lot since then, especially when it comes to building software exectuables.

My Cygwin environment was already set up to compile a variety of console applications, so the reconstruction process went smoothly enough. I ended up compiling a separate declaration and definition of the glWindowPos suite of functions, simply to avoid having to perform any GL Extension Wrangling. Luckily that was all that was needed - I have recently been using gl3w to load whatever GL functionality that I need, but I am avoiding adding that to the project for as long as I can.

The final output is acceptable, but I can tell that some of the features that I had intended to add did not make it in - whether due to bugs, or inconsistencies in the copy I received from my former professor.

The application draws individual collision rays for each pixel on screen; it takes around ~20 seconds to produce the following still.

Scene


In the end, I’m happy to have been able to interface with and resurrect an old project.

I’m looking forward to adding some more installments to this series: I intend to go back into my old code and try to fully realize my previous efforts to implement transparency (via refraction).