This approach to the creation of synthetic noise in graphics was named after Ken Perlin who first developed the concept during the shooting of the original TRON movie in 1981. It’s the basis of many of the graphics effects such as mountains, smoke, water or surface textures such as fur that are added to action films and 3D animations to enhance visual effects in some way. Ken defines “noise” as “a texturing primitive you can use to create a very wide variety of natural looking textures”. It has low bandwidth and storage requirements because it doesn’t require a stored source texture, instead it’s defined as a “procedural texture” created on the fly from a maths expression and applied to the volume of a graphic shape rather than to its surface.
It’s as if you created a granite vase by starting with a solid block of granite then produced the final shape using a lathe – rather than creating a vase shape mesh from thousands of polygons then mapping a surface texture over it. The first approach uses far less CPU time.
The Perlin Noise function uses pseudo-randomness to create density clouds of texture. Further sharpening processes then give the clouds the appearance of solidity, coined by Ken as a “hypertexture”.
Here’s a link to Ken’s talk “Making Noise” given on 09/12/1999: http://www.noisemachine.com/talk1/index.html
Related articles by Zemanta
- Procedural Paint in Java: Perlin noise (asserttrue.blogspot.com)