Just to throw in another possible way that you can do this, while keeping a relatively simple node network in the hypershade, you can use ID maps. I've only done this whilst having 2 different materials on one object, but it means you have 1 object with 1 UV map (therefore 1 texture map), but by using and ID map you can assign different types of shaders to the same object.HOW DO I ASSIGN DIFFERENT SHADING GROUPS TO THE SAME MESH?? IS THIS A GOOD WAY TO PROCEED?