Worley noise

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Template:Short description

File:Worley.jpg
Example picture generated with Worley noise's basic algorithm.
File:Worley-f1 With Grid.jpg
When computing Worley noise, each seed is located within its own grid square. (Grid is not a part of the noise)
File:Worley Noise F1 Normal.png
Worley noise can be differentiated once to generate a normal map. (Grid is not a part of noise)

Worley noise, also called Voronoi noise and cellular noise, is a noise function introduced by Steven Worley in 1996. Worley noise is an extension of the Voronoi diagram that outputs a real value at a given coordinate that corresponds to the distance of the nth nearest seed (usually n=1) and the seeds are distributed evenly through the region. Worley noise is used to create procedural textures.[1][2]

Worley noise of Euclidean distance is differentiable and continuous everywhere except on the edges of the Voronoi diagram of the set of seeds and on the location of the seeds.

Basic algorithm

The algorithm chooses random points in space (2- or 3-dimensional) and then for every location in space takes the distances Fn to the nth-closest point (e.g. the second-closest point) and uses combinations of those to control color information (note that Fn+1 > Fn). More precisely:

  • Randomly distribute feature points in space organized as grid cells. In practice this is done on the fly without storage (as a procedural noise). The original method considered a variable number of seed points per cell so as to mimic a Poisson disc, but many implementations just put one. This is an optimization that limits the number of terms that will be compared
  • At run time, extract the distances Fn from the given location to the closest seed point. For F1 It is only necessary to find the value of the seeds location in the grid cell being sampled and the grid cells adjacent to that grid cell.
  • Noise W(x) is formally the vector of distances, plus possibly the corresponding seed ids, user-combined so as to produce a color.[2]

See also

References

<templatestyles src="Reflist/styles.css" />

  1. ↑ Script error: No such module "citation/CS1".
  2. ↑ a b Script error: No such module "citation/CS1".

Script error: No such module "Check for unknown parameters".

Further reading

  • Script error: No such module "citation/CS1".
  • Script error: No such module "citation/CS1".

External links

Template:Fractals Template:Coherent noise Script error: No such module "Navbox".

Template:Asbox Template:Computer-science-stub