This shader is the culmination of months of working with Blender, playing with materials in Cycles, trying out other rendering solutions like Renderman, and taking the best elements of what I’ve learned and combining it into a single Uber-Shader. The benefit of an Uber-Shader of course being that it simplifies your Blender workflow, giving you a single set of controls to get the objects in your scene to look exactly as you want them, which you can re-use in all your projects instead of having to constantly recreate the same node-trees over and over. Since the release of this product, I’ve used this setup in every single one of my projects.
My solution takes things one step further, providing controls which are intuitive and should be very familiar to anyone with experience in the industry standard PBR Metal/Roughness workflow, such as can be found in Unreal Engine or Unity 5. My solution is specifically aimed towards letting Blender users take advantage of these intuitive controls which the game industry has been enjoying, and allows you to work with texture maps generated from dedicated material design software, such as Substance, 3D Coat, or Quixel. Any software that can output base colour, roughness, metallness, and height maps will work with this solution. This setup combines dielectric, metallic, and refractive shading into a single shader- something no other solution I’ve come across has done.