How do I mix the output of cycles shaders to build a wallpaper like material?

I’m pretty new to blender, and I’m trying to prepare a wallpaper like material using cycles. The wallpaper has a metallic ink which gives a strong metallic sheen when the angles are right, as well as having an ordinary ink on paper appearance with sheen at low incident angles.



this first pic models the basic paper and sheen quite well using fresnel input to a mix shader


and this second pic is a pretty good representation of the sheen which is pretty much a straight glossy on a version of the pic where I just picked up metallic ink and pushed the rest to black.


and this is the sort of result I’m after, made in photoshop by layering the metal sheen onto the basic pic with mode set to screen. (I also tweaked the levels slightly of the sheen layer slighty to push the darker parts to black).

To make this work in a single material (rather than rendering the whole thing twice and compositing) I need to use the output from the glossy bsdf that does the sheen as the factor on a mix node, but there doesn’t seem to be a node type to do this - once the flow has been through a glossy (or other) shader, there are relatively few things that seem to work.

Am I going about this the right way? Am I missing something obvious?

1 Like

you can define material boundaries using a method similar to the one linked in my signature ( first link )

Thanks Modron, I’ve tried that and it gets close, but ideally I need to use the (luminence) output from the glossy shader as the mask to drive the mix shader’s Fac input, rather than the raw texture so I can pick up the diffuse color of the ink in the non-specular areas.


Here’s my current node setup. Logically I think what I need to do is use the output of the glossy to drive the fac as well as shader input of the mixer, but that just locks the mix shader to one input, presumably because it doesn’t know how to convert the data.