I work on a voxel-like game, and I have finally managed to create some basic terrain generation using simplex noise. Heres what it looks like:
Sure I can generate different kind of terrains (more or less hilly/aggressive), but there wont really be any variation.
At the moment I only know one way to make it more interesting, and that would be to add stone blocks under the grass (I would simply check the above block).
So my questions are: What techniques would I need to use, to generate different kind of terrains, which still kind of blended together at the edges. And how would I go about caves and rivers? And lastly how would I make a better variation of blocks?
If any could lead me in the right directions, I would appreciate it a lot.
Ps. It's not a valid answer to say that I just need to mix a lot of noises, to generate it. How?