OpenGL Planet Renderer

This is my submission for an optional assignment in the Game Programming 4 course of the International Game Architecture and Design study program at NHTV University. The main topic of the course was triangulation of meshes, and there was an optional assignment to create a planet or asteroid renderer.

The mesh is generated by taking an icosahedron as a base shape and subdividing the triangles many times. The output vertices get normalized and the coordinate is used to sample a three-dimentional perlin noise to offset mountains and oceans.

The vertices get uploaded as one single model and vertex-shaded based on their height and slope. The whole application is shaded using a fixed-function pipeline in OpenGL, with a singular light source to create a day/night cycle.


Duration: 1 week
Tech: OpenGL 4 (C++)
Links: Download


AggroBird | 2024