OpenGL Programming

I took an OpenGL class a few years ago, building 3D applications from the ground up.  This knowledge really helps with understanding the workflow with OpenSceneGraph and what’s going on behind the scenes in game engines like Unity3D.  Here’s a few screenshots of my work.

We started out with simple concepts – 2D drawing, GLUT, GLUI, and then moved on to 3D concepts.

Paint clone

An early class project, a paint clone. Users can right click to select their tools.

Paint clone

An early class project, a paint clone. This is showing some points drawn with the creatively named point tool.


One example of the masterpieces that are possible with my paint clone.


An intermediate project before we moved to 3D – a breakout clone.


The playing field is populated


No sound effects or brick explosions, and occasionally the ball would glitch through block corners, but I was quite proud with this.

3D scene

Moving into the 3D domain, this was a project requiring us to build a renderer that include controls to manipulate different parameters of the scene and see the parameters affect the appearance. Users could drop objects into the scene and manipulate them, change camera position, and lighting position. Modern game engines do not properly convey how much work goes into even the most rudimentary 3D visualization.

3D scene

A few objects in the scene, skewed a little bit as I tweaked the parameters with the GUI.