Advertisement

Terrian Generation

Started by March 08, 2000 06:45 AM
5 comments, last by Sieggy 24 years, 9 months ago
I''ve been exploration methods to randomly build terrain from height maps. Unfortunately, I''m still pretty weak in this area and if anyone could point me to some good info on the math involved and terrain generation it would be greatly appreciated! Also, there was an article a while back on Gamasutra about generating terrain from rough bitmap "descriptions" (used in Everquest I think). Anyone know where I could find it? I couldn''t find it on Gamasutra for the life of me. Thanks again, Sieggy
The most used type of terrain generation is probably generated from a monochrome bitmap. Dark areas represent low height values and bright areas represent high height values.

Then, all you need is to read the bitmap data and calculate height of the terrain from the pixel values.

============================
Daniel Netz, Sentinel Design

"I'm not stupid, I'm from Sweden" - Unknown
============================Daniel Netz, Sentinel Design"I'm not stupid, I'm from Sweden" - Unknown
Advertisement
I can do that easy enough. What I was thinking of was a way to give brief descriptions, perhaps via a bmp. A "high" color says there is a mountain here but map generator takes that rough bmp and builds the slopes, cliffs, etc. from it automatically. I do not want to worry about individual vertex descriptions, just enough to say the this is a mountain and this is the approximate hieght and size.

This was precisely the problem that the EQ folks described: it was too cumbersome to define their large world, point by point. They needed some way to say, "Here is a river valley," or "here is a low ridge" and then the map generator would generate the actual individual height of the vertices. This is precisely the same idea I''m going for.
I was just reading this article today about Perlin Noise:

http://freespace.virgin.net/hugo.elias/models/m_perlin.htm

You might be able to adapt the 2D algorithm to let you specify the first level or two of detail and then use a random number generator for the more detailed levels... I think this would give the results you are looking for.
Thanks chippydip. I skimmed through it and there looks to be some decent info. I''ll spend some serious time with it later today. I appreciate the link!

Sieggy
I had another idea last night that might make the terrain look even cooler... You might be able to adjust the persistence value you use to combine the different noise functions to reflect the type of terrain you are trying to produce. I''m not talking about just adjusting the static value (as on the site) but instead use a dynamic algorithm so that, for example, mountains will be more rough (higher persistence) and valleys will be more smooth (lover persistence) You could probably even develop a more complicated method based on the values in your original height map or even provide two "seed maps" -- one for height data and one for "roughness" data... I''m just making this up as I go, but it seems like it would work and produce some interesting results!
Advertisement
That''s a cool idea. I''ll have to play with that. :-)

Thanks again for the link! For someone who is still pretty new to fractal math, it made perfect sense after sitting down with it for an hour. I started writing code for it and am looking forward to see what it comes up with.

Also, I checked out the link that they had to Terragen. That''s a pretty neat little app. I comes up with some impressive looking vistas. I was showing it to a friend and they couldn''t believe it wasn''t real ;-).

Thanks again,

Sieggy

This topic is closed to new replies.

Advertisement