|
Creating tileable textures out of complex patterns
Most textures can easily be made tileable using the Offset filter and some heavy duty cloning with the Clone Tool. For more complex patterns such as patterned fabric or wallpaper it can be difficult to match up the edges. With such patterns cloning is often too much work, take for example this seam:
|
|
Using the Clone tool to remove this seam is possible, but it's pretty hard.
|
You could use the Clone tool to get rid of this seam, but it would take a lot of precision cloning.
In this tutorial I'll show a different way to make a texture tilable. This alternative way is much more suited to making complex patterns tilable. I've included every step of the process so it's quite lengthy, but hopefully beginners can folllow it as well.
This is the original scan I will use, some groovy 70s wallpaper:
|
|
The original scan: contains the whole pattern at least once.
|
The first thing that needs to be done is make sure the pattern is a straight as possible. Add some rulers at recognizable features on the texture and rotate so everything lines up. Fabrics are sometimes 'skewed' as well, so you might need to use a little bit of 'Free Transform' to fix this.
|
|
Rotating the image.
|
Crop the excess to that the canvas is completely filled with the image.
|
|
The excess parts removed.
|
Making the texture tilable is done in two steps. First it's made tilable horizontally, then vertically.
Use Filter-> Other-> Offset to 'wrap around' the image.
|
|
Use the Offset filter to wrap around the image. Use about half the width of the image so the seam will be in the middle.
|
There is now a seam in the middle of the canvas. The sides of the image (which I coloured blue) are tiling because those parts used to be attached to eachother before the Offset filter was applied.
|
|
After the offset there is a seam in the middle of the image and the sides are tilable.
|
Select the left side of the image, from the side of the canvas all the way to the seam in the middle.
|
|
Select the left side of the image. Be sure to select all the way to the left edge of the canvas to keep the sides tileable.
|
Copy and paste it in a new layer.
|
|
The left part of the image pasted in a new layer.
|
Move the new layer to the right until the patterns matches up as good as possible. I've made the background layer dark red to make it more clear what's going on.
|
|
Move the layer until the patterns match.
|
The left part of the image is not needed anymore, so it's time to clean up. Go to your layer pallete and click on the thumbnail of the top layer while you press CTRL. This creates a selection based on the contents of the layer.
|
|
CTRL-click the layer thumbnail to quickly select where the layer has information.
|
Select a part of the right side as well. You don't have to select everything, just the a bit on the right side so the crop tool now where to crop.
|
|
Select a bit on the right as well, so that the crop tool will not cut the right part off.
|
Use Image->Crop to remove the unwanted parts of the image:
|
|
The unwanted parts cropped off.
|
Most likely there will still be a little bit of mismatch between the two layers. Maybe the image was still slightly rotated or perhaps the pattern is not exactly in the first place. To fix this 'skew' the layer with the Free Transform tool.
|
|
Skewing an image with the Free Transform tool. Note that the left side stays exactly in the same place.
|
With the top layer selected, go to Edit->Free Transform (or press CTRL-T). Now grab the middle handle of and move it up or down while you press both CTRL and SHIFT. Holding shift will constraint the movement to up and down only, holding ctrl will 'skew' the image. As you can see the left part of the layer stays in the same position, so it will not destroy the at the sides. We don't have to worry about the tiling at the top and the bottom, because we still have to take care of that anyway.
|
|
Use a Free Transform to skew the image to make the pattern line up.
|
Now use the Eraser tool to clean up the seam even more. I've made the Background layer dark red to make it more clear what I erase. Try to erase so that the border between the two layers is in a very even part.
|
|
Use the Eraser to clean up the seam. The background layer has been made dark red for clarity
|
Here is an example from another texture with a more difficult pattern. Note that the border between the two layers is placed at the most even parts of the image. At these even parts you will notice the border the least.
|
|
Another example of where to put the border between two layers.
|
If you are happy with your seam (or more precisely: lack thereof) then flatten the image. Pat yourself on the back and congratulate yourself for being halfway there!
If you want to be sure you did everything right paste the image in a new canvas. Place it head to tail to see if it tiles correctly.
|
|
Halfway done, the texture is now tiling horizontally. Time for a cup of tea!
|
Tiling the image vertically is done in the same fashion. First apply the Offset filter again:
|
|
Offset the image vertically
|
Copy the top part of the image in a new layer:
|
|
Copy the top part in a new layer
|
If you are lucky the seam lines up nicely once you moved the layer. Most likely there will be a slight mismatch that needs to be fixed:
|
|
Oh no! It doesn't line up, the top layer needs to be skewed.
|
The problem with skewing is that it will destroy the horizontal tiling, there will be a gap at one side:
|
|
If you'd skew the top layer now it won't be tiling horizontally anymore.
|
Luckily there is a way to skew the layer and keep the horizontal tiling intact:
|
|
Make your canvas wider.
|
Now take the top layer, and move it to the left. Since your texture tiles horizontally it will form a seamless whole.
|
|
Attach a copy of the top layer to the left.
|
Do the same for the right part: make another copy and place it on the right side. Use 'Layer->Merge Layer' (CTRL-E) to collapse the three layers into one single layer.
I've coloured the background dark red again to show the result.
|
|
Attach another copy to the right.
|
Now you can safely skew the top layer to match up the patterns. What falls of the canvase on the left side gets replaced on the right side. Since the skewing is 'symmetrical' the result will be tileable.
|
|
With the texture tiled on both ends you can safely skew without destroying the horizontal tiling.
|
Use the canvas size to bring your image back to it's original size:
|
|
Crop the image to it's original size.
|
Erase the seam:
|
|
Erase along the seam (background layer coloured red for clarity)
|
Select the top layer by clicking it's thumbnail while holding CTRL. Also select a bit at the bottom:
|
|
Select the extends of the parts you want to keep.
|
Crop and Flatten the image and the work is done.
|
|
Done! Completely tilable in both directions!.
|
Time to see all this hard work in action. Create a new document and copy the texture around to test it's tileability:
|
|
The final result in all it's tilable glory. I still can't believe wallpaper like this really existed, this would drive me nuts!
|
It looks like a really lenghty process, but in my experience it only takes around 10 minutes to make a texture tilable this way. So next time you need to make a tilable texture for a complex pattern, give it a try.
Copyright 2007 - CGTextures
|