A downloadable asset pack

Our project consists of creating a planet in virtual space in a procedural manner. This planet will feature realistic terrain, oceans, foliage, and visually­appealing lighting effects that imitate the natural effects created by light in our reality. As this project requires a fair amount of effort, we divided the work and split the tasks between our group's four members. The tasks were divided into terrain generation, foliage generation, ocean generation, and light effects.

Terrain Generation:

Creates a spherical mesh that acts as the terrain of the planet. It is also scaled to real­life proportions and are generated with a perlin noise function which makes the terrain non­uniform and seemingly natural.

Foliage Generation:

In this task, the creation of realistic foliage needs to be created into the 3d space of the program. Realistic grass was generated with the combination of an instance vertex buffer and a perlin noise function. The trees were also created using an instance vertex buffer. With a shader effect, the grass and trees do not appear visible until one gets to a certain distance to the terrain.

Ocean Generation:

For this task we needed to create an ocean in the 3d space. Implemented two normalmaps which were used for the visual aspects. The other two textures were the heightmaps of the normalmaps. Created a rectangle using an array of vertices and mapped them to the texture coordinates of the images. Then, implemented code in the vertex shader, set the height of the wave, and in the pixel shader, we set the movement along the x­axis of the two textures to create waves.

Light Effects:

Using mainly post­processing shader effects, we implemented the sun as a volumetric light source, as well as introducing HDR rendering, bloom, and tone mapping. This method produces satisfactory improvements to the scene with relatively little extra processing.


Planet Generator Project 15 MB

Leave a comment

Log in with itch.io to leave a comment.