Fluid-like Perlin noise

Are you tired of Perlin noise that looks like this:


Would you rather have Perlin noise that looks like this:


It's almost a premade expressionist painting on its own! What's not to like.

I have gone to bat for distorted Perlin noise several times, and I will continue to say that, given the right circumstances, distorting Perlin noise can give a less uniform, more fluid feeling. However, the more I look into it, the more I see that it is not a miracle cure. It has advantages and disadvantages.

How to do it:

Normally, you would write something like

height = noise(x,y)

What you do instead is

height = noise(x+noise(x,y),y+noise(x,y))

Though to be safe, you might want to make sure the distortion noise pulls from a different area of the Perlin map than the original. Besides, finding the right amplitude and frequency of distortion will take some time.

I have put together a neat little GIF, too, like the pictures above, just colorized with water and land to show how it can be used in terrain. The noise starts off undistorted and becomes more and more distorted, to show the effect of different amplitudes - which is best?


It is a bit difficult to say exactly what its effect is. Earlier, I have spoken about how Perlin noise, however great, usually has the same frequency at all points, that is, the same rate of change. The distortions are a quick fix, automatically creating areas of big change (where distortions squeeze coordinates together) and flat plains (where distoritions squeeze coordinates apart).

It also creates these stringy or sinewy landmasses, which I term fluid-like. I especially like the effect around mountains - it creates perfect channels for rivers.

Comments