Extended Principled vs BSDF Defaults/Accuracy

Issue #1948 resolved
GeneralProtectionFault created an issue

So if this is in the blog and I missed it, apologies up front, and just point me there 😅

DAZ: 4.22

Diffeo: 1.7.4.2037

Blender: 4.0.2

Basically, I’m getting results where the skin is much more accurate on the Extended Principled option than the BSDF option:

So, as we can see, the Extended Principled option produces much more fidelity in the skin, while the BSDF option is at least closer on the strand-based hair (admittedly not fully supported), and the eye moisture is much better.

I understand the SSS might need to be tweaked, but I’m having trouble getting it to reasonably represent the DAZ material. If I completely take this out (disconnect it):

So it seems like that’s a lot to do with it, but it’s still not nearly there, or as close to the extended (supposedly not-as-good) option.

I’m wondering if I’m missing something obvious here or if there are default settings that could be improved when using the BSDF materials.

*** Side Note ***

This is with the DAZ HDRI coming in, as well as 3 DAZ lights that I have set up as default lighting in DAZ Studio. These lights come into Blender like this:

The blackbody comes in as 0 for all 3 lights, and everything looks super red. I just put those up to “typical” values around 5000-5500 or so. The snapshots above are all after I have done that. Just in case that lighting is relevant or something else worth tweaking defaults on.

Comments (15)

  1. Thomas Larsson repo owner

    You could try to enable SSS Skin. That will generate a BSDF material with a subsurface node instead of translucency + volume. This may not be perfectly faithful to the iray materials, but it usually works well enough for me. The Alternative SSS option leads to slightly different materials, still using subsurf nodes.

  2. GeneralProtectionFault reporter

    Oh snap, that’s MUCH better, thank you 😁

    I think the SSS is the clear winner.

    So, I guess if there’s anything to be said for an enhancement, I think SSS being selected by default would make sense--unless that would screw up other setups, then of course I get leaving it alone. But that’s clearly leaps and bounds better than not checking it.

    One other thing that is just a picky thing--I experimented and noticed that if I check Alternate SSS, but do not check SSS, it does not take effect. So, a cool idea might be to have SSS automatically check if the user clicks Alternate SSS or something similar.

    Anyhoo, thanks for getting me on track either way 👌

  3. Alessandro Padovani

    BSDF should generally be quite close to iray, while SSS is an approximation and generally needs to be tweaked by the user. It is odd that for this specific figure it is the opposite. Please link the product page so I can give her a look.

  4. Thomas Larsson repo owner

    I replaced the two boolean properties SSS and Alt SSS with a single enum property Skin Material, with three values IRAY, SSS 1 and SSS 2. Suggestions for better names or tooltips?

  5. Alessandro Padovani

    You may rename the options as “BSDF”, “SSS”, “Alt SSS”, to keep the old names so the documentation reference doesn’t change. Tooltips ok for me.

  6. GeneralProtectionFault reporter

    Hmm, so as for the figure, the materials should just be Victoria 9. The figure itself being a combination of morphs and I created the stand hair. I recently converted her to G9 from G8.1, and I’m pretty sure I had the same issue with her as 8.1 (Victoria 8 as well, I converted the geometry but the skin wasn't worth the hassle). I’ll see if I can reproduce it after work today if it’s at all elusive.

  7. Alessandro Padovani

    You’re right, the Victoria 9 skin comes in pretty good with extended principled, though it looks a little oversaturated. Here the bsdf option is quite good too, though it looks a little desaturated. Keep in mind that tone mapping has a prominent role for perceived colors, especially skins which are pretty sensible to light intensity. In iray I used the default tone mapping and HDRI, while in cycles I used agx with base contrast.

    In general though bsdf is better. I’m afraid this is as good as it can be.

  8. GeneralProtectionFault reporter

    So I’ll add my 2 cents. I don’t use the default DAZ HDRI, I find it to be “eh” 😅 , but the differences made by messing with that or the render settings seem very subtle compared to the differences we’re seeing. That did get me wondering if it could be tweaked though, and this is interesting--this is trying to tweak the BSDF / Volume way that is default (underlined settings were changed:

    So, changing the texture color spaces to AgX Base RGB also got pretty close, but Filmic RGB was a little better, and bumped up the diffuse factor from .150 to .250. With those changes, I’d say it’s a tough call for me, but with it as it comes in by default, that desaturated is not subtle, it totally changes the complexion and may as well be a different character (you can see the difference in that snapshot since I just changed the head material).

    So, I don’t know if changing those values as a default would work for every character, but it’s night & day for mine LOL.

    Y’all can choose what to do, I just think either messing with those values or defaulting to SSS would make more sense out of the box. That said, I did not test other characters, so if there’s reason not to do either of those, you guys know a lot more about it than me, I’m mostly pressing buttons here 😁

  9. Alessandro Padovani

    Basically what you did is to saturate and better reveal the diffuse texture over the translucency effect. In general these tweaking will vary depending on the skin but yes you can always do that, that’s the beauty of blender you can do anything. When I say “this is as good as it can be“ I mean the automatic conversion, not that you can’t improve over it by tweaking.

    Changing the color space is wrong though, jpg png textures are srgb or non-color, depending on the channel. I’m not sure why there’s so a wide choice of texture color spaces in blender, since those color spaces may apply to view transforms, but not to textures. Unless we use exr or hdri textures that’s not usually the case, apart the environment.

    https://docs.blender.org/manual/en/latest/render/color_management.html

    Below an example with the G8F skin where filmic srgb is not good, just to show that your tweaking is “pure luck” and doesn’t extend to all skins. Also here’s a comment from Brecht Van Lommel about filmic srgb:

    Don't use Filmic sRGB for base color textures, that's not its purpose and it will generate color values > 1. It's meant for emission or compositing. Its purpose is explained in the release notes:

    A new Filmic sRGB colorspace was added for images. This may be used for compositing background plates into a render that uses a Filmic view transform, without changing the look of the background plate. Using Filmic sRGB will convert 0..1 range colors into HDR colors in the scene linear color space. (2b80bfe2b8, 33f5e8f33f)

    https://projects.blender.org/blender/blender/issues/103107

  10. GeneralProtectionFault reporter

    Yeah I see what you mean.

    Only other thing I would say is maybe the default diffuse value (.15) is low. I didn’t try dozens, but I tried a few different figures with different skin tones, and the impression I get is that the figure is always under-saturated, as you mentioned. It’s like IRAY Jaundice 😂 .

    Just in general, the only things that seem to make any difference are the diffuse ratio or the base color. In the model I have been showing as an example, I got it sorta close without using Filmic with a diffuse of .4 and a wee bit of orange tint on the base color…so it seems like however “accurate” the translucency is, it’s too much of a good thing.

    Anyhoo, I think this can be “resolved” as I understand how to attack the problem. Basically I’m just trying to figure out the best way to prevent you guys from getting repeat questions like mine LOL. Might be the blog just needs an update, there’s some info on this in there I see, but dated.

    First, though, I do have a few items I think worth mention:

    • In the Materials section, I don’t understand what the Change Colors & Change Skin Colors buttons do. When I bring it up, it’s defaulted to some awful purplish color, but changing it doesn’t do anything that I can see, even if I turn it completely black, no effect--so I’m curious if this is a legacy feature, or if there’s a bug or something I’m missing?
    • I think there’s a but in the material editor. If you hit Skin or Skin-Lips-Nails, the Head material (the face) does not get selected (G9).
    • I’m assuming the materials are deliberately handled differently, as they are broken up differently for a G8.1 figure. Totally fine, just making sure it’s on purpose.

  11. GeneralProtectionFault reporter

    Ah! Disregard about the change skin color, I see it’s just the color given to the viewport shading (not render preview) view. Sorry! 😜

  12. Thomas Larsson repo owner

    The head material is now included in the skin materials. You need to reimport the character for the change to take effect.

    The materials are created in the same order as they are defined in the daz file. So the difference between genesis generations was made by daz, not me. If Merge Materials is enabled in easy import, which is the default, identical (up to viewport color and bump strength) are combined into a single material to save space. This is why the head material wasn’t selected: it is merged with the mouth cavity, which is not a skin material.

    If you don’t like the viewport colors, you can turn them off in the global settings.

  13. Log in to comment