Advanced Tips for Creating Diffusemaps

From The DarkMod Wiki
Jump to navigationJump to search
written by STiFU

Making textures with complex structures tile-able

When working with textures that feature complex structures like bones/skulls or irregular stones, it is useful to have parts of the original image that are outside your crop-area available when making textures tile-able. These outside image parts have to be scaled accordingly and worked into the texture. Here's how it's done...

Copying, Cropping and scaling

Crop preprocessing

So after you've drawn your crop-rectangle on your sourceimage, but before you perform the actual crop, pull four Guides from the rulers (Ctrl+R) to the borders of the crop-rectangle. Make sure you have snap enabled (View->Snap) here and in the following steps. Now cancel the crop and use the Rectangular Marquee Tool (Select Tool) to copy the outside areas one by one, paste them as a layer above your image and move them to the opposite side, but inside of your virtual crop-rectangle, as shown in the image on the right. Doing this for the four edges is probably sufficient but if you want you can also do it for the four corners. Now you can easily redraw your crop-rectangle as it snaps to the guides and crop the area, apply an aspect ratio correction during, if you need to.

Combining the layers to a Diffusemap

Depending on your preference you can now either use the Clone Stamp to draw the upper layers on the bottom layer or use layermasks on the upper layers to define which parts of them shall be visible and perform some fine-tuning afterwards with Clone-Stamp after flattening the image, if necessary. The latter approach however maintains the image-sharpness and is much more flexible and error-forgiving, because mistakes can easily be corrected by altering the layermasks. Make sure to start with the lowest of the upper layers and work your way up and also hide the layers above the layer you're currently working on.


This whole procedure makes the Offset redundant. I'd still recommend to perform the Offset though after flattening the image, to see if everything went right. Very small borders might still be visible due to interpolation during a potential scaling-process. These borders can be eliminated by Clone-Stamping or selectively applying a very subtle blur on the "seam-cross" (Pull a narrow Rectangle Marquee over the seam and perform the blur).

Scaling the image

If you choose not to use the upper procedure, it is wise to work with an unscaled image when making it tile-able, because Clone-Stamp reduces the image-sharpness quite a bit depending on the used opacity- and hardness-settings. If you scale the image down after making it tile-able you'll end up with a higher sharpness for that reason. It is a little more work this way, but the result is of much higher quality.

Multiple color-versions of your texture

Diversity is always good, so you might want to provide differently colored versions of your already tile-able diffusemap. An easy way to do this is of course to change the hue/saturation settings of your texture and using different filters. However, the results might not be satisfying and don't introduce an actual diversity, so here is a different approach I also very often use when creating normalmaps. The general idea here is to overlay any random background texture with the structures of your diffusemap.

Creating a background texture

So first of you need a background texture. This texture may not have any structural details. It is really just the background color that we need here, which may be detailed, but doesn't need to be. There are basically two options for this step:

  1. You can create a background yourself, with (very) subtle Gradients or Paint Bucket and Brushes/Dodge/Burn/Sponge in different sizes and a low hardness. Just make sure you're matching an overall color-tone. Too big variations in brightness and color will result in bad tiling later. Because you need to make this background texture tile-able, it is wise to paint only in the center at first, perform the offset and paint the "seam-cross" afterwards.
  2. Just pick any random texture whose overall color-tone and color-distribution suits you well and perform a rather strong blur, to remove it's structures (like brick-borders etc.). Make the texture tile-able afterwards, which should be done pretty quickly, as there are no details on this texture.

Applying the detail structures of your original Diffusemap

Now move the layer of your original diffusemap on top of the background-layer and switch its blending mode to Overlay. The result can already look pretty good at this stage, but you can probably improve it by using a High Pass filter (Filter->Other->High Pass) on the top-layer. The radius-setting of said filter allows you to define the maximum size of detail structures of your original diffusemap that are visible in the end. Just play a little with that setting and you'll soon get how it affects the appearance of your texture. You will now realize why there are no details necessary on your background-texture. You should check if the structural-layer still tiles properly with the Offset filter when you're done and possibly tweak it with Clone-Stamp or some subtle selective blurring, because the High Pass filter might have introduced some unwanted seams to it. You have now successfully created a Diffusemap, that shares the same structures as your original Diffusemap, but with a completely different color-distribution.