Ever since I started playing games like Minecraft and Terraria I have been fascinated with the generation of interesting landscapes. The seemingly infinite possibilities that can lead to some really breathtaking environments made the games I liked into games that I loved.
As part of my research into how the random terrains were generated I found out about cosine interpolation and how it can take a sequence of height values and plot a smooth slope between each. The first idea that came to mind to use this concept was the old rocket games where you had to land a small rocket on uneven terrain. A quirk with the cosine generation was that it always generated plateaus if points successively increased in height, something that would have been very handy to control the difficulty of landing the ship.
I set out to implement a version of that rocket game using this newfound technique but quickly found that I was more interested creating planets than I was programming the rocket. After I had the idea to wrap the terrain into a circle to represent a slice of the planet I spent the rest of my time with the project improving the visuals and adding small details like colour based on height and a cloud layer.
At the time I did not have much experience using sprites in my programs and as such all the visuals were drawn using simple gradient line and circle draws, a style that I quite enjoy even today.
Comments are closed.