How to make a scattered dirt effect with an image texture? I'm trying to add smaller rocks and dirt to cover a procedural rock texture and I haven't been able to make it look realistic due to the fact that the dirt texture I have been using is an image texture of a solid patch of ground.  To fix this, I tried duplicating the original rock mesh and then applying modifiers to shrink and distort the duplicate so that one mesh will be the original rock, and the other will be the dirt covering it.

Here's a screenshot of what I am talking about (the blue part is the dirt covering):



Not only am I convinced this is the wrong way to go about it, I've also massively increased my poly count this way.  

This is the node group for the dirt texture that is supposed to cover the rock.  I used a transparent shader to try to give the effect of blending in but as you will see in the render, it doesn't look good at all.  The 3 image textures are the original colour image, a gloss and normal map.



Here is the render:



So what I am wondering is, is there a way to use nodes to give the effect of some parts of the dirt texture being invisible to give a scattered effect?  

Thanks!
The problem you have is that every spot is either a rock texture or a dirt texture. What you need is a way to blend between the two.

The way to do that is to use a mix shader with an image texture plugged into the mix 



The image texture should be a grayscale image - in the areas where it is white you will get 100% rock texture, in the areas where it is black, you will get 100% dirt. Where it is in between, you will get a smooth blend of the two.