I am currently working on a world terrain for a game we are making. This is one of my favorite parts of game development and design. In a previous job, I made maps for a game with a relatively large world. Their original map was horrible and very unrealistic. It drove me crazy so I asked to remake the maps, trying to make them more realistic. As this was some time ago, we had some major restrictions so I had to work around that but today, it is much easier to make worlds that look and feel real, and obey the laws of nature.
A couple of gripes I have had with maps, some in AAA companies’ games although even more in indie games, is the way lay of the land, the way rivers flow and transitions between different biomes. For example, rivers do not divide, they flow into each other. Deserts exist due to specific conditions, such as in a rain shadow, on the leeward side of mountains or in specific latitudes, with very specific conditions.
While you can get away with this in a fantasy game, as many say to me about anything they want to justify, but why do that? Many of your players will not notice, but some will. And once that one person starts complaining in your forums, others will notice too.
So..while working on a new game, I went searching for some specific information for story development. I found some information from a novelist who was talking about World Building. I felt happily vindicated when his first lecture on geography talked exactly about rivers and coastlines and other geology/physics forces that form landscapes.
I know nothing about coding but I have a master’s degree in geology, with my specialty in geomorphology which is the study of land forms and the process which form them. Now, the tools out there are not yet capable of making terrains that are 100% realistic. Some try, like World Machine and World Creator, which, by the way are my go to tools for terrain creation. World Creator stand alone is one of the best and they are adding simulation which should go a long way it making terrains more realistic.
But…my concern is the map you create, the one that you build your terrain upon.
Rivers: Rivers start from high, and flow to low areas. So start your rivers in the mountains and then have them join up at lower levels. This creates a water basin or watershed. Everything within that basin flows together eventually, and as the rivers and streams join, the river becomes bigger until it runs into the sea. All rivers go from the high elevation to other rivers and/or to the sea. The only exceptions are where humans have artificially changed the flow, such as in a canal. Remember, a river always tries to find the shortest route to the sea. It does not flow around east and west and then go to the sea, it heads for the sea. Higher ground will affect it’s flow, and often you will see rivers that flow around a hill or between two hills. There is a lot more complexity, such as how glaciated areas affect rivers flow, or karst topography (cave systems), or unique systems where softer sediments are exposed in mountain building. But that is a different post.
Here is an example of multiple river basins that flow into the Mississippi river.
Hopefully that helps. Some folks ask me about deltas, which sometimes occur when the rivers flow into the sea. Very specific conditions much occur in order for deltas to form.
The three major conditions are the river must be carry a large load, meaning it must have the capacity to carry a log of sediment, such as sand or silt.
The river must be flowing slow enough to allow the river to drop the sediment in the river’s mouth. This also means that the river is in a flat area, not a steep slope. A river that flows from coastal mountains steeply to the sea will be moving faster and not have time to drop it’s sediment before it reaches the coast.
And where the river joins the sea must be shallow, either a shallow sea or a shelf that extends outward for some distance. This keeps the sediment from simply flowing down the slope and dropping in the ocean.
I am simplifying my explanations because honestly, the only important thing here is to look at your map, the relief of your map and think about how you want it to look. Remember, it is the illusion. Your map and resulting terrain do not need to be 100% realistic, and that is impossible unless you run a complex simulator.
But…you can make sure your rivers go from high to low. I have seen so many maps where the rivers go from sea to sea…crazy! They drive me batty, honestly. Unless your river is a man made canal or you use some sort of fancy magic, then this would not happen.
If you use deltas, place them in a proper place. Delta’s are one place where rivers do divide. They do this because they are in a very flat area and as the river tries to find the shortest path to the ocean, it constantly changes as sediment blocks it’s path.
There is a lot more I could talk about.
Lakes, how streams flow from lakes and where they should be positioned
How other factors affect river flow
Coastlines, how to make them realistic
Different types of mountain building
Deserts, where to place them and why
If this is something you are interested in, let me know. If it is dry and boring and you do not care, then that is okay, I am sure you will let me know.
Anyway, just trying to find some way that I can give back the community. So hope you enjoyed if nothing else.
P.S. I also posted this on the Unity forums. 🙂
I like these kind of infos 😀
I was even thinking about it at some point, that one could procedurally generate rivers for terrain by using a* pathfinding algorithm, since you can practically simulate different sediments (pathing cost) and theoretically it should always try to find the shortest path and I’m actually surprised that I haven’t seen that being used in games yet 😮
Actually, I think it is being done. World Creator is in the process of simulating erosion and water flow on a terrain. It looks pretty good. I know at least one asset developer who at least planned to include placing a river that would calculate the shortest route to the end point. So slowly, it is happening.
Glad you enjoyed the topic. I have been told, on the good old Unity forums, that most people do not care about this stuff. I am sure every gamer is different and ever developer is different. We all have our pet peeves and our favorite methods of immersion. Just wish that developers would get outside of their comfort zone. It seems that if AAA games do it, then they will do it too. But…as an indie gamer, we have the ability to do it so much better. Making sure your world is believable may only appeal to the eggheads among us, but those are people I would love to have playing my game. 🙂
Hope all is well with you and your game development is coming along! Thanks so much posting.
I would be very interested in your take on realistic coastlines or about how deserts are formed. Can you recommend a few books, please? Thank you.
Andrei, I really do not know how one can learn to make realistic coastlines or deserts from a book. What terrain tool are you using to make your terrains? If it is one I know, I might be able to help. Otherwise, I suggest just looking at lots of pictures. 🙂 I could go into how deserts are formed and why coastlines look as they do, but I think that might be overkill.