1 reply · posted

Voronoi demystified

Voronoi patterns can be seen a lot in nature.

In CG the texture is made like this:

The space is filled with (pseudo-)random points. Spheres with a radius of 0 are made around all those points.

Now the radii are grown, all at the same rate, until two spheres touch. They keep growing, but stop where they touch, they cannot go through each other. ( you can probably imagine something like  this happening in nature, for instance when cells are growing in human skin...)

In other words, for each point, the distance to the closest point is calculated.

This is when set to F1, when you use F2, the distance to the second nearest point is being calculated.

This distance is given a color, so different distances have different colors. This is the Color output of the Node. The Distance output shows the actual distance in grey-scale Values. So that is black at the original random points.

The Position output is just the position in 3D of the center of each cell (so, dependent on your coordinate system\Texture Coordinates).

How the distances are being calculated has some fancy names, but is not that difficult:

The Minkowski distance is just a generalization of Pythagoras;

With a 'power' of 1, you get the Manhattan distance.

With a 'power' of 2, you get the Euclidian distance (Pythagoras, as you know it).

When the power goes to infinity, you get Chebychew. (In Blender this is implemented as a power of 10.0)

So, it is all Minkowski with different Power settings.