Search blog posts
2009-12-29 An animation
2009-12-28 New comment engine
2009-12-20 A new type of piling
2009-12-18 Jonathan McCabe
2009-12-13 Fractalish photography
2009-12-12 Aerial tilt-shift photography
2009-12-11 Janet Waters
2009-12-10 Digital patina
2009-12-08 Pattern piling with feedback
2009-12-07 The beauty of roots
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.
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.
comments powered by Disqus