A blog about algorithmic art and fractal aesthetic. Subscribe to the RSS feed.
December 8th 2009
Pattern piling with feedback
Practically, my pattern piling algorithm is implemented in the following way. There is a piece of code (a pattern generator) which accepts the coordinate of the pixel and returns a color (or more precisely, a value of the index). The pattern generator is first run on the true coordinate of the pixel. Then the latter is rescaled (and maybe shifted), and the pattern generator is run again, effectively drawing a similar pattern at a different scale. This process is iterated enough times to give the illusion of an infinite number of iterations.
This calls for an obvious modification. Instead of performing a simple rescaling of the coordinate of the pixel, why not a more general transformation? The results are not always very interesting, because the iterated transformation strongly distorts the pattern, which becomes barely recognizable. It turns out that nice effects appear when the transformation is itself determined by the pattern piled (the "feedback"). For instance, if the pattern is monochromatic, we can move each pixel in a direction by an amount proportional to the brightness of the pattern at this point. This is not a new idea, if I remember well it is due to Mark Townsend and dates back to the first implementations of Fractional Brownian motion algorithms for Ultra Fractal. Yet, it is interesting to revisit this effect with various patterns.
20091207-1, illustrating piling with feedback applied to an invaders pattern. Click to zoom and appreciate the effect of the feedback!
Here are also a few other works which used non-trivial transformations instead of a simple rescaling. The transformations are most of the time based on a pattern, as described above. In various places in these images, interesting interferences appear when two very distorted patterns are piled on top of each other.