River systems

Now it's a good time to draw some rivers. As we already have a heightmap we do not need to fabricate rivers out of nothing and will calculate river systems based on precipitation drainage. The first step is to build a precipitation model. Frankly speaking, we can omit this step and consider that each cell has the same precipitation. It will be … Continue reading River systems


We already got scalable Voronoi graph and heightmap on it. The next step is to draw a coastline that will make the border between water a land masses clearer. The easiest way to separate land and water is just to omit the water rendering. We can set background to our svg element to represent the water and then draw … Continue reading Coastline


Now, when we got a Voronoi graph (see the previous post), we can create something resembling a map, like this "Europe...khe-khe" one above created in a two minutes. It is a pure heightmap as all the colors just represent the height of the particular polygon. It looks like a map even without coastline and rivers being drawn. So … Continue reading Heightmap


Some months ago, surfing the Internet for a good procedural map generation tutorials, I've found the Generating fantasy maps article by Martin O'Leary. I was so excited that decided to create my own Fantasy map generator, even I'm still a novice in programming.