"What the... !? Why can't I get a single tile out of this?"
Has it occurred to you that natively the Pattern components only support even-numbered tilings? The example above shows three Tiles components with their Repeat H and Repeat V parameters set to 1/1, 2/2 and 3/3 respectively, resulting in tilings of 2x2, 4x4 and 6x6. With Repeat H and Repeat V set to 1/1 we get a tiling of 2x2 as the smallest tiling possible on a Tiles component!
But what if we wanted just 1 tile, or a tiling of 3x3, or 9x9? And what if we wanted our filter to be able to go through all available square tilings, starting from 1x1 and continuing with 2x2, 3x3, 4x4, 5x5, and so forth?! It would appear the Pattern components are somewhat lacking an option to accommodate for anything else than their hard-wired 'divisable by two' tiling behaviour.
Or so it would seem! As demonstrated with the filter above, odd-numbered tilings are indeed possible with Pattern components. Below we shall examine the methods with which these were achieved.
The first method to achieve odd-numbered tiling utilizes a Kaleidoscope component, which has been set up like this:
- Mode: Square
- Offset H: 0
- Offset V: 0
- Shape Size: 25
- Repeat H: 1
- Repeat V: 1
Displayed on the left side is the filter tree at a Size of 100% (equivalent to a Repeat value of 1), on the right at a Size of 25% (equivalent to a Repeat value of 3). Using the the Size control slider we can seamlessly move through all possible tilings starting from a single tile. So far so good! But what happened to the color variation on our Tiles component? Apparently, it got lost in the operation. Looks like this method is only suitable for patterns without color variation!
[For more info on Kaleidoscopes, check the excellent Kaleidoscopes Unveiled article.]
So here we go. This method utilizes Offsets and Profile Gradients. The original red color tile is first offset to the exact center of the image and subsequently scaled to 200% of its original size. The image above shows the filter tree at a Size of 100% (equivalent to a Repeat value of 1). Component settings for the two Offsets are the following:
- Offset 1:
- Offset H: 25
- Offset V: 25
- Percentage: 100
- Offset 2:
- Offset H: Mapped with Profile Gradient
- Offset V: Mapped with Profile Gradient
- Percentage: 25
The same filter tree at a Size of 25% (equivalent to a Repeat value of 3). The result is assembled by 'sampling' every second 'tile' of the original Tiles component, a reasonable compromise that allows for preserving the original color variation. Note that with this method, all controls of the Tiles component remain completely usable, except for Chaos, which must be kept at a value of zero due to the offset scaling. In effect, we have created a new Tiles component capable of seamlessly running through all possible square tilings.
Check out the filter used for this article: Odd-numbered_Tilings.ffxml
- Library filters that use this technique: