You're blocking ads, which pay for BlenderNation. Read about other ways to support us.

Principled shader UNLEASHED! Part 1 - Dielectric / Metallic Materials


Juan Gea writes:

Now that we have an awesome ubershader in Blender 2.79, we want to review it and show you how to use it, suddenly creating materials in Blender Cycles has become something pretty easy, so we are doing a tutorial series to unleash it's power and discover some tips and tricks to keep in mind.

In Part 1 we review opaque dielectric materials and metallic materials.

We hope you like it!

About the Author

Juan Gea

Founder of, technical artist, animation director, animator, programmer in different languages and more than 16 years of proffesional experience, I enjoy R&D in 3D and VR and I specially enjoy those projects that are presented to me as challenges. Blender is now our main 3d program and I hope it will stay with us for many, many years.


  1. Thanks Juan for the tutorial, it shows some cool tricks

    however i see it as "tricky", meaning that the values shown don't exactly respect the principles of PBR shading, expecially i find very strange the high values for the Specular parameter

    as an introduction to the Principled Shader i suggest this other tutorial by Andrew Price, that better explains the philosophy behind the Shader implementation and the Metal Workflow (i work mostly for realtime so i need my results to be consistent with Unreal Engine and Unity)

    happy blending everybody

    • In fact, as I say in the video, increasing the values of the specularity respects the PBR principle, but just some materials are over that 1.0 of value, the ability to increase the specularity is just to gain "effect", I mean, in the end we are working on 3D, and while reality is our target in some cases, there are other siautions were reality is not our target, so being able to break those laws is great.

      I don´t think it is tricky, what I think is that is flexible, so you can modify the shader while always respecting the PBR principles, becuase the PBR is not about hte values you enter, but how the shader have a consisten behaviour, of course, if you want to reproduce some specific plastic and you don´t introduce the correct values... you won´t get that plastic, BUT you will get that material in any situation, that is what PBR stands for, consistent behaviour along environments :)

      In the Principled Shader documentation you have the equation needed to calculate the correct Specular value for every material, here you have the equation fromthe docs:

      To compute this value for a realistic material with a known index of refraction, you may use this special case of the Fresnel formula:


      For example:
      water: ior = 1.33, specular = 0.25
      glass: ior = 1.5, specular = 0.5
      diamond: ior = 2.417, specular = 2.15
      Since materials with reflectivity above 8% do exist, the field allows values above 1.


    • Ah, It´s yours! :)

      Thanks for it, it´s pretty useful, I used it back with Corona, but it works pretty well for shader testing in general, thanks for it!


  2. good, you're right

    Andrew says to leave the value at 0.5, and it makes sense because Substance has that number cabled, but it should be a function of the IOR

    by the way: i've tried implementing that with nodes, but i'm not strong with the maths and the result are not coherent with the document values

    would you take a look to my setup?

    • I´ve been checking this, and while theoretically your maths are correct, the fact is that the only way to achieve coherent results is to use a value of 2 in the power node, don´t ask me why because I don´t understand that, but if you put 2 instead of 0,5 you will get a consistent result, you may try with the different values that you have in the upper text, so maybe the formula is wrong, or maybe the Blender nodes work in a different way, I don´t know...

      Hope this helps.


Leave A Reply

To add a profile picture to your message, register your email address with To protect your email address, create an account on BlenderNation and log in when posting a message.