Robin O'Connell

   

Flooded Graveyard

During my penultimate semester at CSU Sacramento, I took an advanced course in computer graphics (CSC 155) taught by the inimitable Dr. Scott Gordon. This was my final project for that course: an atmospheric 3D scene depicting a flooded graveyard on a cloudy, starlit night, populated with trees, grave markers, and a spooky ghost that drifts aimlessly in search of lost souls.

While you could throw a scene like this together in under an hour with a modern game engine like Unity or Godot, this was an exercise in fundamentals—what it would take to make something like those engines' rendering subsystems. Nearly everything you see here, from the perspective, to the lighting, to the rippling, reflective surface of the water, was built up from bare mathematical principles. (I say "nearly" because OpenGL lends a helping hand with the interpolation of vertex attributes, texture sampling, and rasterization.) A list of the techniques I employed is given below.

Screenshots

Tools & Technologies

  • Java
  • OpenGL/JOGL
  • GLSL
  • JOML

Features