I’m trying to make a single master material for all the materials in my game, so I can give every surface some common, matching properties. I don’t want every material instance to have a normal map, but if I plug a texture parameter into the master’s normal slot, it won’t compile unless I set a texture for that parameter. That in turn means that every material instance which doesn’t have a normal map will end up getting the master’s normal mapped onto it, which obviously looks super-weird. Is there a simple way I can place some kind of hard toggle/boolean switch in the material, which will only apply a normal if I want one?
Yup, it is possible.
You can use a static bool parameter and a Switch node.
Plug the texture node to true.
False can be a 3vector with value 0,0,1 (blue, neutral normal).
Ooh that works, thank you! I didn’t think of wiring a vector3 into the normal, I was stuck in texture/no texture headspace