
previous | next | stochastic patterns: contents | rmannotes: top

Another way to add randomness to regular patterns is to use a technique called bombing. Bombing generates random placement patterns -- regular patterns or features which are "dropped" at random positions or orientations in texture space.
We start out with a regular pattern composed of diamonds (rotated squares).
Then using the bombing technique, we randomly move the position of each diamond. The key here, and the thing that distinguishes it from a perturbed regular pattern, is that the shifting is based on the tile coordinates (column & row of the tile) and not the texture coordinates. By using the tile coordinates as the seed (input) to noise, we get the same pseudo-random value (ouput) for every point inside that tile. And that's why the regular shape is maintained. If different random values are obtained within each tile, the diamond shapes will become irregular in shape.
To reiterate, the randomness must be
based on tile coordinates (col,row) --
because (col,row) are constant for each tile --
and not on texture coordinates (ss,tt) or some
other variable (e.g. s,t) which varies within each tile.
Other parameters can also
be based on tile coordinates. In the example below, we use
udn to randomly discard tiles and to
randomly choose tile colors. Note that the seeds (inputs) to udn
are large -- that way neighboring tiles have uncorrelated randomness.
In general, udn is useful when noise is not being used for pattern generation, but rather
for making some random choice. For example, when bombing shapes, several attributes might be randomly chosen using udn:
Finally, we can generate many layers of the now randomized
diamond pattern using a for-loop. The loop index controls the size
of the diamonds (the frequency of the layer), adjusts the fuzz
factor, and is a factor in the
seeds to udn so that each layer is completely unique.

previous | next | stochastic patterns: contents | rmannotes: top

RManNotes is Copyright © 1995, 1996 Stephen F. May
Any comments or suggestions appreciated.
Steve May (smay@pixar.com)Last Modified: 4/16/96