Can anyone tell me a way to generate island structures or hill structures like in minecraft?
I’m just searching for a proper THEORY for that random-shape generating, but it should keep a defined base pattern..
like: islands schould be rounded but variate in shape and scale ( min/max width & height ).
or: rivers schould not be straight lines, they should have curves and a random width.
or even: generating some sort of forest, where trees are placed in a way that the user can still walk through the forest (that’s a simple one I think, just say that some blocks around a tree should remain blank, if code tries to put more trees around the last one )
What kind of math can I use to do such things?
I would be glad for some links for tutorials or references. I’ve searches all around the web for hours, but all I could find was some books to buy like “game mathematics” or something, but my budget is set to zero.
EDIT:
First of all, I’m sorry for my bad englisch.
Secondary I want to thank all of you for your answers. These are great references and I’ll spend much time to go deeper in that.
I strongly recommend looking at Amit’s Game Programming Information and other blog posts by him. He had a whole series on creating realistic looking maps with rivers, coastlines, etc.
Amit’s Polygonal Map Generation for Games (first item in list) is a hugely impressive article that talks about the logic of generating sensible shaped coastlines, islands, rivers, mountains, etc. Hugely impressive bit of work!
A Method For ‘Growing’ Rivers In A Randomly Generated World
[included in above list] fairly simple algorithm for generating a river’s path based upon the other ’tiles’ in the map, e.g. their type and elevation.