Game Development Stack Exchange is a question and answer site for professional and independent game developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm using the simplex noise to create Minecraft like terrain. I can only achieve hills like this. enter image description here

Does anyone know how to use simplex to make more dynamic landscapes?

share|improve this question
What does dynamic mean to you? – Byte56 Aug 8 '12 at 22:59
flat areas mix with high low hills/mountains – Goss Aug 8 '12 at 23:10
up vote 8 down vote accepted

One way to achieve this is to have an additional layer of noise (2D) that controls the height of your current noise. This second layer should be scaled larger to give slower transitions between terrain types. The noise you have now defines the bumpy-ness, this second layer is kind of like a scale that will flatten out or exaggerate the bumpy-ness.

share|improve this answer
+1 The Way To Go – Laurent Couvidou Aug 9 '12 at 0:44
pseudo code. float octave1 = PerlinSimplexNoise.Noise(x * 0.001f, z * 0.001f) * 0.65f; float octave2 = PerlinSimplexNoise.Noise(x * 0.0005f, z * 0.0005f) * 0.25f; float sum = octave1 + octave2? – Goss Aug 9 '12 at 4:19
It's something you'll have to tweak until you get it the way you want. I would probably multiply them, as that seems more logical for making it a scale (as long as it's 0->1), but if adding them gets the results you want, go for it. – Byte56 Aug 9 '12 at 5:29
Take a look at… to see how layering different noises works out. You can even use a noise field to filter other noises applying to the base noise, like photoshop masks, and so on down the rabbit hole. – Patrick Hughes May 31 '13 at 6:59

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.