Perlin noise
|
Perlin_noise.jpg
Perlin noise is a function which uses interpolation between a large number of pre-calculated gradient vectors to construct a value that varies pseudo-randomly over space and/or time. It resembles band-limited white noise, and is often used in CGI to make computer-generated objects more natural-looking, by imitating the pseudo-randomness of nature.
It resulted from the work of Ken Perlin, who invented it to generate textures for Tron. He won a special Academy Award for Perlin noise in 1997. Interestingly, Tron was denied the 1982 Academy Award for visual effects, because it "cheated" by using computer-generated imagery.
Perlin noise is widely used in computer graphics for effects like fire, smoke and clouds. It is also frequently used to generate textures when memory is extremely limited, such as in demos.
External links
- Ken Perlin's homepage (http://mrl.nyu.edu/~perlin/)
- Reference implementation of Perlin noise in Java (http://mrl.nyu.edu/~perlin/noise/)
- Ken Perlin's explanation of how noise is created and used (http://www.noisemachine.com/talk1/index.html)
- Another explanation of how to create and use noise (http://freespace.virgin.net/hugo.elias/models/m_perlin.htm)