UPDATE: THE ONELVXE MATERIAL PIPELINE HAS BEEN RELEASED! AN UPDATED VERSION OF THE CYCLES DISNEY SHADER IS INCLUDED IN THE BUNDLE. GO HERE FOR MORE DETAILS: http://www.onelvxe.com/material-pipeline
Original Post:
The coveted Disney Shader, in all of its glory!
This is an Uber Shader that can be used to craft nearly any material imaginable including: non-metals (dielectrics), metals with anisotropy, car-paint, glass/refractive materials, skin (SSS), emission type materials, and nature type materials. The Custom Shader uses many of the same principles as the Disney Shader and implements some PBR Workflows to push realism within Cycles.
I have embedded a YouTube video demoing how exactly the shader works and how you should use it. Watch the video before viewing for optimal results!
Please download the .blend file for Beta testing and to use the shader in your projects. This shader is part of a much larger Blender Cycles Material Addon that is currently in development. While it will be a paid addon, all Beta Testers will receive 50% off the price of the full addon!
Gotcha! Its a temporary setup, and uses some PBR workflows that may not get included in the trunk release of Blender. Its a small part of a much larger addon.
Tutorial and shader have been updated and fixed. Tutorial no longer has crappy audio and stupid flickering. Disney Shader now applies clearcoat correctly. See the OP to find the updated tutorial. Skip to 20:45 minute mark to see clearcoat fix!
Just did a test render using metallic and clearcoat and I only had 393mb vram usage. Thats with a subsurf modifier of 2 on the shader ball which kicks me up to 650k faces, and 1.3mil tris, oh and caustics.
If you are not associated with Disney or have permission to use the name, you will probably want to choose another name. Especially if you intend to sell the completed project.
@Initium Thoth: Of course. However, for promotional purposes and intended use, I went with that name. The concept is familiar enough that using the “Disney” shader name for a lot of people means, “oooh, one shader, multiple types of material types, sliders, easy tweaks etc”. Once the plugin is completed, the name of course, will be different.
I think Disney is becoming genericized… maybe were afraid it would become Pixar shader.
Though both are synonymous with ‘great’ visual quality. Disney for almost a century.
Reflection Group node --> you can replace the colour mix with two math nodes (multiply by .162 then add .838)… this will be slightly faster then the colour mix node
all your round math nodes are meaning that anything greater then 0.5 will be come 1 and anything less then will be 0… means that clearcoat is either on or off, same with emission, metallic and dielectric not a sliding scale… not sure if this is by design or not though.
You have loads of emission textures which are 0 strength and black… no need for these just have an empty socket.
the other thing is if you are dealing with emission textures… i would explain when to enable / disable the MIS option for the material… as many users will leave it enabled when it will just slow down the render when the emission isnt being used.
overall i think you can do some optimizations to reduce the amount of BSDF nodes. that is what is slowing down the render speeds the most imo.
@doublebishop thanks for the feedback! taking out the emission nodes should help a bit. I’ll have to look into doing specific edits for the BSDF nodes so that they aren’t slowing things down as much.
Is there a way to group the settings into a more logical set, visually? They’re all jammed on top of each other. For example, the SSS settings can be grouped under an SSS header on the node.
Also, please keep the IOR setting. Different materials have different IOR values that can range wildly. 1.45 might be an average but for true accuracy, the IOR needs to be dynamic.
The uber shader looks good so far. I’ll see what I can create with it.
Is there a way to group the settings into a more logical set, visually? They’re all jammed on top of each other. For example, the SSS settings can be grouped under an SSS header on the node.
Also, please keep the IOR setting. Different materials have different IOR values that can range wildly. 1.45 might be an average but for true accuracy, the IOR needs to be dynamic.
The uber shader looks good so far. I’ll see what I can create with it.
Is there a way to group the settings into a more logical set, visually? They’re all jammed on top of each other. For example, the SSS settings can be grouped under an SSS header on the node.
Also, please keep the IOR setting. Different materials have different IOR values that can range wildly. 1.45 might be an average but for true accuracy, the IOR needs to be dynamic.
The uber shader looks good so far. I’ll see what I can create with it. Thanks!
The biggest thing though is to make sure multiple importance is disabled on the material if you dont have any emission going on. makes it significantly more noisy then it needs to be.