The noise function is very interesting once you understand what it is doing. The best explanation I came across was to create a random value at regular intervals 0, 1, 2, 3 ... and then draw a smooth curve through them. The value at any point of the curve is then given by noise(x). Extend this to 2, 3, 4 dimensions and you get noise (or perlin) spaces. To make interesting noise, you need to add together noise functions with different intervals - like:
value = k1.noise(x) + k2.noise(2x) + k3.noise(3x) + k4.noise(4x) where each component is more squiggly then the previous one, and has a weight value. This is how you can make different types of terrain.
Anyone who is familiar with the fourier series will see an interesting thing here. If we consider the noise(x) to be like a randomised version of a sine wave, then the composite perlin noise above looks like a type of harmonic series, just using squiggles instead of sine waves. In audio, "white noise" is a waveform that is made up of all frequencies. Is there a counterpart in the fractals and perlin noise? One way to approximate white noise would be to add lots of noise(x) functions with different scales. To make pure "white noise fractals" you actually need to to an iterative calculation which is a random walk. Each iteration you flip a coin and either add or subtract a small delta value from your running total. This will give a noise function that is the equivalent of audio white noise.
I was playing around with a fractal generator for spherical surfaces (planet surface). The iterative way to do this is to take a unit sphere where every height on the surface is initially zero. Each iteration, select a random point inside the sphere and create a plane normal to that vector. Flip a coin and depending on the result, either increment or decrement all points on the surface that are on the opposite side of the plane to the origin. After about 5,000 iterations you will have a nice white noise height map for the planet surface. It seems that the way you make the noise gives a unique characteristic to the image produced.
This is quite an old article, but it actually has some good diagrams
http://web.archive.org/web/201603251341 ... perlin.htm