I'm new to gamedev.
I'm currently working on a little peaceful low-poly game using LWJGL3, following ThinMatrix tutorials.
So far, I'm using Perlin noise to generate the heightmap. This is what I got with a 200x200 map :
I would like to have biomes, rivers, mountain not so often and other features.
For biomes : I have read, to generate biomes we often use the heightmap, a moisture one and a temp one based on the height. But imagine, you can have a forest at the same level of a desert but tundra will only be on top of the mountains. Should the biome define the height?
For other features:
Should I generate a Perlin noise layer for each features? If yes, would they only impact the heightmap?
How should I do it? What are the steps of a good terrain generation?
How should my biomes be structured? Currently, my biomes have only 1 color and based on height, the color varies. But the transition between biomes are bad. Yellow to green, green to brown, etc..
I'm generating a terrain with only heights; how should I add more features on my terrain using Perlin noise?