Making clean textures dirty:

Using "Multiply" settings on your Airbrush:

This technique is pretty straight-forward: duplicate your layer, choose airbrush (black with opacity of 3%), paint your dirt on the new level, offset top and bottom layers to create dirt on the edges of the image, erase from top layer anything that's too dirty, then offset again (using negative values this time) to return to original state of framing.

Here are the steps in more detail:

 
Open up your image
into photoshop. I have made this texture smaller for the purposes of this tutorial.

 
 
 


Duplicate the layer
by dragging the "Background Layer" within the "Layers" Window onto the "Create New Layer" button. Now we begin painting dirt on the new layer.



 
 


Now we choose the AIRBRUSH tool, color black. You can then RIGHT-CLICK onto the image workspace to bring up the airbrush size and falloff options. For a small image like this we can use "27 Pixels". I use a wacom tablet, so if I push hard on the pen, it will go up to 27 pixels, but if I push softly, the brush will be smaller and sharper.



 
 


So now lets lower the opacity of the brush settings, and choose "Normal" or "Multiply" to create a gentle layer of dirt. You can expect to brush up to 5 times over the same area to get a noticeable dirt layer.

 
 


Now we draw on the cracks and seams over and over until it starts to look dirty. Keep in mind that drip stains often happen at the "Upside-Down- ' T ' " intersections of grout. Water will flow down the grout, then drip over the edge of the next block.
Don't worry if some areas become too dark, because we can fix this later (see below).



 
 


Now we offset BOTH the top and the bottom layers with the same increment, so that we can create dirtyness seamlessly over the edges of the image.

To do this, make sure the top layer is the current working layer. From the menu, select "Filter>Other>Offset", then choose the values below. With a larger image, you may want to choose higher values.

After you offset the top layer, be sure to offset the bottom layer as well, by selecting the "Background Layer" from the "Layers" Window, then hit CTRL-F to "do-again" the same offset filter settings as the previous operation. (You can also do this by clicking the first listing in the "Filter" menu):

I wouldn't do it in this example, but oftentimes when I 'm working to see tileability of my textures, I hit CTRL-F-F-F-F, etc.. just to see my images panning across the screen. Unfortunately it uses up my "Undo" options, but I will do a few, then go back to the previous state by using the History tool.

 
 


So now the texture is offset and you can continue painting the dirt near the edges.

 
 


Now we can softly erase from our top layer areas which might be a little too dark. Choose the eraser tool with a low opacity setting and large falloff (brush size).

It should look like this now in your "Layers" Window.

 
 


Once we have a nice even weathering, we can use the Offset Filter once again, but this time use the same values as before, but negative values this time. This will bring the offset back to the original state.

Select the top layer in the Layers Window.
Apply a fresh Offset Filter: using the top menu, select "Filter>Other>Offset", then choose the values below.

Repeat this for the Background layer as well.

Or if you prefer, instead of doing this offset step twice, you can merge layers at the beginning of this step, then offset the new flattened image by the values above. However, I like to keep my Photoshop files in tact in case I need to make a modification somewhere down the line after testing in 3D.

 

 
 


So here is the finished image!