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 myself am creating a terrain generation algorithm and would be interested in knowing why others have chosen midpoint displacement over perlin noise. Minecraft is an example where midpoint displacement was preferred. If anyone knows why I would be glad to hear it.

share|improve this question
No one knows except Notch and/or other developers of Mojang. – thedaian Feb 29 '12 at 20:52
If the decision wasn't completely random, and I doubt it was, then there must be a logical reason. I believe that the reason will be obvious to at least some people here. – jcora Feb 29 '12 at 20:54
The reason may just be to meet some internal design goal - it doesn't necessarily have to be for some technical reason that outsiders can deduce. – Kylotan Feb 29 '12 at 21:10
@Kylotan The way the question was worded before was unanswerable and off-topic for this website. See the FAQ, and see also:… If you have a better edit for question, the link is above. – John McDonald Feb 29 '12 at 21:19
Currious where you read that Minecraft was using midpoint. Notch spoke differently: Granted that was ages ago and may have changed. – Leniency Feb 29 '12 at 23:22
up vote 3 down vote accepted

Different methods of fractal generation tend to produce terrain with different characteristics. The reason for their use could be stylistic rather than for any technical performance reason. Different algorithms also allow you to change different parameters to give the final result. I have no direct answer re: MD vs Perlin though, sorry..

share|improve this answer

Notch posted about this on his blog:

I used a 2D Perlin noise heightmap to set the shape of the world. Or, rather, I used quite a few of them. One for overall elevation, one for terrain roughness, and one for local detail. [..] But [it had] the disadvantage of being rather dull. Specifically, there’s no way for this method to generate any overhangs.

So I switched the system over into a similar system based off 3D Perlin noise. Instead of sampling the “ground height”, I treated the noise value as the “density”, where anything lower than 0 would be air, and anything higher than or equal to 0 would be ground.

share|improve this answer

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.