Perlin Noise has a wide range of uses, basically anywhere where you need something to look natural in origin. What's more it's output can easily be tailored to suit your needs. The use of Random number generators (which is essentially the foundation of what Perlin is doing) is used in many programs to create unpredictability, make the motion and behavior of objects appear more natural, or generate textures. However a strict random number generator whilst useful does have limitations in that the output can be too harsh to appear natural.
If you look at many things in nature, you will notice that they are fractal. They have various levels of detail. A common example is the outline of a mountain range. It contains large variations in height (the mountains), medium variations (hills), small variations (boulders), tiny variations (stones). Look at almost anything: the distribution of patchy grass on a field, waves in the sea, the movements of an ant, the movement of branches of a tree, patterns in marble, winds. All these phenomena exhibit the same pattern of large and small variations. The Perlin Noise function recreates this by simply adding up noisy functions at a range of different scales.
To create a Perlin noise function, you need two things, a Noise Function, and an Interpolation Function. The use of this function on the web tends to be more limited than that elsewhere (lets say for example on a desk-top application) due to processor requirements, since that whilst they are relatively simple to implement, it does have a tendency to become far too processor intensive for most web applications. However that said, there are many uses on the web, and we have given many examples here; all of which are very easy to follow in terms of code implementation.
|