An implementation of a noise function by Steven Worley. @parameters
surfacePosition: If you want your displacement pattern to match surface shading, use the undisplaced position. This is only active when there is no connected manifold.
frequency: Controls the size of the cells. Higher frequencies make smaller cells.
distancemetric: The means to measure distances to neighboring cells. Manhattan distance gives more rectangular shapes and Euclidian distance gives more spherical shapes.
jitter: Controls the distortion of the cells.
c1: Multiplier for the distances to the first feature.
c2: Multiplier for the distance to the second feature.
minkowskiExponent: Makes the distance transition smoothly from Euclidean to Manhattan.
shape: Modifies the computed distances to create different shapes (Linear or Cosine).
clamp: Causes resulting distances to be clamped to the range 0 to 1.
invert: Inverts the final pattern.
randomScale: Randomize the amplitude of the cells.
randomScaleCenter: Randomize the amplitude of the cells.
manifold: The manifold over which to apply the noise. (The default is P).