POV-Ray : Documentation : 2.5.11.9 Crackle Patterns
 POV-Ray 3.6 Documentation Online View

#### 2.5.11.9 Crackle Patterns

The `crackle` pattern is a set of random tiled multifaceted cells.

There is a choice between different types:

Standard Crackle
Mathematically, the set crackle(p)=0 is a 3D Voronoi diagram of a field of semi random points and crackle(p) < 0 is the distance from the set along the shortest path (a Voronoi diagram is the locus of points equidistant from their two nearest neighbors from a set of disjoint points, like the membranes in suds are to the centers of the bubbles).

With a large scale and no turbulence it makes a pretty good stone wall or floor.
With a small scale and no turbulence it makes a pretty good crackle ceramic glaze.
Using high turbulence it makes a good marble that avoids the problem of apparent parallel layers in traditional marble.

Form

```  pigment {
crackle form <FORM_VECTOR>
[PIGMENT_ITEMS ...]
}
normal {
crackle [Bump_Size]
form <FORM_VECTOR>
[NORMAL_ITEMS ...]
}
```

Form determines the linear combination of distances used to create the pattern. Form is a vector.
The first component determines the multiple of the distance to the closest point to be used in determining the value of the pattern at a particular point.
The second component determines the coefficient applied to the second-closest distance.
The third component corresponds to the third-closest distance.

The standard form is <-1,1,0> (also the default), corresponding to the difference in the distances to the closest and second-closest points in the cell array. Another commonly-used form is <1,0,0>, corresponding to the distance to the closest point, which produces a pattern that looks roughly like a random collection of intersecting spheres or cells.
Other forms can create very interesting effects, but it is best to keep the sum of the coefficients low.
If the final computed value is too low or too high, the resultant pigment will be saturated with the color at the low or high end of the `color_map`. In this case, try multiplying the form vector by a constant.

Metric

```  pigment {
crackle metric METRIC_VALUE
[PIGMENT_ITEMS ...]
}
normal {
crackle [Bump_Size]
metric METRIC_VALUE
[NORMAL_ITEMS ...]
}
```

Changing the metric changes the function used to determine which cell center is closer, for purposes of determining which cell a particular point falls in. The standard Euclidean distance function has a metric of 2. Changing the metric value changes the boundaries of the cells. A metric value of 3, for example, causes the boundaries to curve, while a very large metric constrains the boundaries to a very small set of possible orientations.
The default for metric is 2, as used by the standard crackle texture.
Metrics other than 1 or 2 can lead to substantially longer render times, as the method used to calculate such metrics is not as efficient.

Offset

```  pigment {
crackle offset OFFSET_VALUE
[PIGMENT_ITEMS ...]
}
normal {
crackle [Bump_Size]
offset OFFSET_VALUE
[NORMAL_ITEMS ...]
}
```

The offset is used to displace the pattern from the standard xyz space along a fourth dimension.
It can be used to round off the "pointy" parts of a cellular normal texture or procedural heightfield by keeping the distances from becoming zero.
It can also be used to move the calculated values into a specific range if the result is saturated at one end of the color_map.
The default offset is zero.

Solid

```  pigment {
crackle solid
[PIGMENT_ITEMS ...]
}
normal {
crackle [Bump_Size]
solid
[NORMAL_ITEMS ...]
}
```

Causes the same value to be generated for every point within a specific cell. This has practical applications in making easy stained-glass windows or flagstones. There is no provision for mortar, but mortar may be created by layering or texture-mapping a standard crackle texture with a solid one.
The default for this parameter is off.