top of page

OpenGL Graphics Programming Masters Project

​  Language and Engine usage:

  • I used Newcastle Universities NCLGL masters frame work to render the shaders I wrote. As part of the project I had to complete the framework with with provided tutorials and then extend it to meet the needs of the scene I wanted to make.

  • The framework was developed and extended in C++.

  • I wrote the shaders for the project in GLSL.

​

  The aim of this course work was to use a variety of graphical techniques to create visually impressive scenes. While most created several scenes that showed off one or two impressive features I instead added a variety of features to a single scene and panned around it to bring attention to each one.

  

  The main features of the scene are:

  • Advanced water made from multiple tessellated quads.:

    • The waters height was determined ​by multiple sine waves:

      • Two out of step long wavelength waves coming into shore decreasing in height the closer they do.​

      • One rebounding off the shore with its effect quickly decreasing the further from the shore it gets.

      • Four coming from the corners to cause small variations in the waves.

      • One emanating from the smaller island in the scene.

    • The normals of the waves vertices are calculated by calculating the heights of the surrounding vertices and then averaging the normals of the triangles that vertex is part of, this creates smooth normals across the tessellated primitives.

    • The transparency and colour of the water is based on the distance from the surface to the sea floor from the cameras perspective (It writes the terrain to a depth texture and then uses the difference between the waters depth and the depth in the texture).

  • Bloom post process effect to highlight the brighter parts of the scene.

  • Four animated particle systems, One to represent the fire and one to represent the smoke in each of the volcanoes.

  • Terrain formed again from tessellated quads and a height map texture.

  • Shadow mapping from a directional light from the sun.

​

Work

About

bottom of page