Layering materials on an object based on texture painting Hopefully this is clear.   I found this artstation post rather interesting, as the gentleman was able to setup an array that would allow for basic texture painting to determine the 'layers' of material:  

https://www.artstation.com/artwork/19w23

So I tried to establish something similar in Blender, and came up with this:



test (and poorly done) b/w texture paint is in the lower right.  In the left node editor, you can see that I have my two standard material setups, 2 of the texture image, both linked to a mix RGB (again, black / white), and that lastly added to the mix shader.   End result in the upper right seems to behave as expected.

My question is, is there a better way to accomplish this?   Would increasing the number of available materials just be a matter of duplicating the mixrgb and mixshader nodes?    Hopefully this makes sense, and thanks in advance!
Yes, this is how you can accomplish this - and the repeated color mix nodes will allow you to mix several material node trees together. You can also add to the effect by plugging the black and white image into a Bump node and feeding that into the normal of the shader if you are wanting to create a layer at the edge of the material boundary.