You know they say that the grass is always greener at the other side.
Well im well into writing a terrain engine and right now im trying to make a small app for generating materials for this terrain (ie grass, dirt, rock etc.)
So far i figured that the steeper terrains is the larger the chance is that the surface is rock.
Im not so sure how to decide whether a patch of terrain should contain dirt or grass. I suppose concave areas will have a bigger chance for vegetation since these areas will collect more water than else. Other than that im pretty lost.
Any suggestions/ideas ?
You oculd simulate the movement of water by placing water at random points and having it move downhill, but never uphill, and, after a few thousand iterations, determining vegetation based on the amount of watter that has flown over an area, and the amount that has collected. Or you could use a Perlin noise function. Or a combination of the two.
Hey, your basic logic seems reasonable to me! But how to apply it algorithmically? There was a paper at SIGGRAPH this year on simulating nature (course #47, "Simulating Nature: Realistic and Interactive Techniques"). You''d be wanting to look for Ken Musgrave''s work on terrain generation. I can''t give you the SIGGRAPH paper. It doesn''t really talk about how to decide where there will be rock, vegetation, etc., either but do a web search using Ken''s name and *maybe* you''ll find something.
The Mojo Worlds Generator product from Pandromeda (www.pandromeda.com) seems to have a procedural texture engine that generates textures that match its generated terrain, and the textures in their gallery does show rock, snow, vegetation areas. May be worth looking at. They will soon have a free viewer available for download. This doesn''t help with algorithms but just shows an example. (I think this product is much better at terrain generation than, say, Bryce.) This is Musgrave''s company, by the way. And I have no association with them!
Graham Rhodes Senior Scientist Applied Research Associates, Inc.