Cloudy plastic cycles

Hi I am trying to achieve a cloudy plastic kind of like these ref images:

I found one topic they talk about it.
I copied the node proposed by one of the users.

The outcome here:

Its not far, but still does not look really like a cloudy plastic. The first thing I am not really comfortable with this node is the lack of input to make the IOR of a plastic. It also look like the inner surface has like more preponderance than the outer skin. while I feel in the reference I attached the surface of the inner skin tends to be the one occluded.

I recently got into rendering in Blender. Took a few months to adapt to modeling. I can say I been researching and it is super powerful. I think almost everything is achievable. On the downside I find materials or suggestions to achieve a realistic material are sometimes over complicated.

I am wondering if I can achieve a realistic cloudy plastic just with the principle shader.

Any suggestions will be really appreciated.

1 Like

You could go the simple route and let the principled shader do the work. Over all, it is adjusting the transmission amount and transmission roughness, along with some surface roughness (surface roughness having the greatest effect). In order to see through the material more, drop the roughness. To make the surface appear smooth, you could add a clearcoat. This is my lazy approach.


6 Likes

Thank you, this is much better. Just to use the principle.

1 Like

I made a similar material a while Back

1 Like

We recently discussed some silicone tubing in this forum, which maybe kinda sorta what you’re looking for.

1 Like

Is there any advantage of this setup over using the principle shader?
J

No idea - I created this material long before Principled existed.

Even now though - I tend not to use principled.

ok, I am trying to use as less nodes as possible. I am not experienced enough to make chemistry each time I need a material haha I know that cycles tends to be like this. I come from keyshot, probably the most intuitive render engine in the market.

Its problem is that it doesn’t support a lot of the absorption terms, and glossy is supposed to be fresnel mixed at the end of all of them. So anytime you need Translucency, you shouldn’t use Principled because it contains the Glossy term on its own. I asked for the roughness adjusted fresnel output to mix in Glossy later (also useful for wet stuff), but apparently nobody cares.

Basically you should mix Diffuse/Translucency/Refraction/SSS etc - THEN Glossy using fresnel.
With Principled you would mix Diffuse/Refraction/SSS with Glossy using frensel, THEN Translucency. Which is plain wrong.

Also Principled breaks energy conservation, which can become an issue.

1 Like

meaning the principle shader is not physically accurate…

I got it, thank you. As @CarlG explained now your approach is physically accurate while the priniciple is not. I am a bit confused about the amount of nodes and the technicalities. For example in your approach I can see in different nodes IOR value. Which I would expect to tweak it once in other sofwares.
I am not nagging, I understand the power of blender and I can even see some people really enjoy these kind of chemistry behind building each asset. I am not as experienced and my frustration is starting to grow when it comes to the shading aspect of Blender. I did not ask many times about materials, but it seems even for the basic plastic I see people decompose the node and add fresnel values. I find it a little bit tedious. Again this is not a critic to Blender, but more about the workflow I am used to. I wonder, switching to Octane for Blender…Do you think I can get something a little bit more straight forward, I research a little bit and I heard Octane has a physically accurate render engine from the go.

What do you think?

Hey, Have you tried Luxcorerender ?? You can drive a Mercedes or BMW all you want, until you sit in a Maserati…just saying

would you expand the metaphor in relation to the render engines? I understand Maserati does sports cars , fast ones. Luxcore benchmarks are slower than cycles. I am guessing maybe AMG and M series might have same performance cars than maserati? hahah

There is no such thing as a physically accurate render engine. You’d probably get closer setting up Mitsuba if you had the know how, but don’t expect quick results. It’s all about simulation, approximations, and simplifications to get render times we can live with. When we talk about physical rendering, accuracy is actually pretty far behind. We’re talking about reduced data sets to drive it, and plausability in the result. If using plausible albedo values on Principled, I haven’t heard anyone complaning about it not being accurate enough. If you’re turning off caustics as a means to do light transport for noise reasons (I usually do), it already breaks the argument of accuracy.

Disney has already improved their shader to support thin and translucency effects in their shader. We’re just lagging behind a bit. And even if they have, it still doesn’t support all the other shader types they have. It’s a shader that does 90% of the jobs, and does it more than adequately. In our case, it just doesn’t do translucency (or velvety) effects.

No. But it is still more physically plausible than what you would get from manual setup if you didn’t know what you were doing. In fact, you can’t even get the plausability from Principled using the building blocks, because Diffuse roughness simulates Oren-Nayar whereas Disney roughness simulates Disney diffuse which takes into account diffuse exit IOR.

Technically speaking, I would say Moony’s approach here is wrong, since glossy is already covered in the glass shader thus done twice.
Artistically speaking, if it looks good, then use it. Don’t be too strung up about it being physically “accurate”.
Fairly speaking, what’s wrong with ajm’s approach of just basing it on rough refraction?

I’ve done this for 20+ years, and maybe I’ve developed a bit of unfortunate purism. No need for you to do so. I presented my method of thinking about pretty much any general surface shading setup. I showed how to deal with translucency. Do you even need it? Did you measure the samples backlit diffuse shadow qualities? Also, keep in mind that “doing it the right way” theoretically may not produce the results you want. Cheating is ok.

1 Like

Hmmm…Speed had not really entered my mind, but I here the new release is a bit faster - Quality is what I was getting at - Lux is very physically accurate, it handles volume and scattering very well.

1 Like

Its problem is that it doesn’t support a lot of the absorption terms, and glossy is supposed to be fresnel mixed at the end of all of them. So anytime you need Translucency, you shouldn’t use Principled because it contains the Glossy term on its own. I asked for the roughness adjusted fresnel output to mix in Glossy later (also useful for wet stuff), but apparently nobody cares. Basically you should mix Diffuse/Translucency/Refraction/SSS etc - THEN Glossy using fresnel. With Principled you would mix Diffuse/Refraction/SSS with Glossy using frensel, THEN Translucency. Which is plain wrong.

I based my answer in your experience with it. I do agree I sometimes get fixed/stuck with some ideas. This is more my curiosity after your clearly pointed the principle shader is not the right option to calculate a translucent and breaks energy conservation. Then I remembered that some tutorials show the plastic also outside the principle. So I started to wonder what is exactly the material that will behave correctly with the principle no nodes added.

But you are right, at the moment I am not needing the translucent anymore. This is more that I got interested in your insights. Did you try Octane?

I wouldn’t worry too much about the energy conservation issue. Yes it’s there, but shouldn’t cause really bad stuff within reasonable albedo values (imo). I’ve never seen people have issues because of it, and if it can be used to create great looking movies… Some tutorials I’ve seen uses musgrave without ramping or clipping, ending up with superwhites and superblacks without noticing.
Not tried Octane, Corona, Vray, Mitsuba. iRay back in the day, but I guess that don’t count :smiley: Not even tried Luxcore, I know it is incompatible with my nested node setups at this point.

I am trying to build kind of a material library aimed to industrial design works.
I am curious about plastic. Should I use the principle or do you recommend a different node setup?

That’s impossible to answer. But given you said earlier “least amount of nodes”, I’d say stick with Principled as much as possible, then manual for the cases where it’s not sufficient. Manual rough fresnel is 6 nodes if framed in the tree, 7 (bump dummy required) if placed in a group - this one you don’t need to think about with Principled. Add one for a cheap bias (math/power) or add 10 for a perlin bias (or Schlick fast bias, but I don’t have that yet) if you need controllable ar coating effects. Add about 5 nodes if you need microroughness. Does it exhibit some sort or tainted specular? Specular tint in Specular might do the trick here, yet more nodes would be required to do it manually. And we’re still only on the basic shading. Albedo color, roughness, and surface structure comes on top of all that.

If it’s for Eevee, for me it would be Principled for sure and kept simple. If you’re trying to represent a hint of accuracy with Cycles (it has huge limitations, might want to use something that can use MERL data directly), you can’t really approach it with a “one material suits all” approach. You have to observe the material, figure out how it reacts to lighting at different angles, and try to build what you see with the correct approach of noodling together the building blocks. See above for just some of the possibilities.

Using Mix Shader, you’re automatically staying within energy conservation. If you start using Add Shader (except for emission effects and special purpose stuff), you have to be way more careful. Still a simple mix of diffuse and glossy isn’t “correct” even if no rules are broken. It needs fresnel to mix them (with correct normals). And even then it’s not “correct” because roughness is not being taken into account.

Principled vs a basic rough fresnel to mix Diffuse and Glossy setup? Principled is probably the more accurate approach since it uses DisneyDiffuse which is a more modern version of Diffuse which takes exit IOR into account and a sheen term to correct for its energy loss. But likely nobody outside Disney would know which was which if rendered next to each other, so who cares?

Principled has limitations in what it can do. But you can’t set up non plausible materials with it. Feed it random anything, and it could be a material that can exist.

1 Like

I was just on a hunt for this, and there seems to be an artifact to this way of doing things that I’m fairly sure doesn’t appear in reality (someone at work is actually going to test this tomorrow):

image
Note the internal reflection in the screenshot above

For a more correct result, I used the node setup I found here (but granted, this is much more difficult to understand, and I currently haven’t everything figured out):

image
Note the lack of internal reflection in the screenshot above

(Btw, what I’m trying to simulate is shining a light through a semi-translucent plastic.)