"Principled v2" feedback/discussion thread

This is a thread for collecting feedback and discussion regarding the current work on a new and improved shading model for the Principled BSDF node.

Just to be safe, I’ll copy-paste the note from the top there:
This is an ongoing project, and nothing is 100% certain yet. Additional components/options might be added, existing components/options might be removed and the behavior of existing options might change.
Also, Principled v2 is just a placeholder name until someone comes up with something better.

Quite a few things are still broken and/or unfinished, but some of the new functionality (e.g. sheen and the new metallic options) is already in a state where they can be used for testing.

Build bot builds of this branch can be found at : Blender Builds principled-v2 - blender.org

30 Likes

I take it that bug reports about the Principled v2 are to be made here while it is still in development? Please correct me if I am wrong.

In which case, did you know that with the Principled v2, transmission does not work if the roughness is 0?

A quick note, don’t forget thin translucency, for tree leafs and similar things :slight_smile:

(Unless I missed it, I have not seen it in the dev thread)

9 Likes

Yeah, please report bugs here.

Thanks, I’ll fix it.

That’s part of the thin surface mode. My current idea is to use some approximation of subsurface scattering, there was an interesting paper about position-free random walks at EGSR that might be useful here. That way, instead of having a new input, the existing SSS controls would handle translucency here.

10 Likes

will it be available here ?

Here you have ))
https://builder.blender.org/download/experimental/blender-3.3.0-alpha+principled-v2.92725760c705-windows.amd64-release.zip

2 Likes

Added a link to the bot builds in the opening post so people don’t have to hunt for the link.

7 Likes
  • Since base color no longer controls transmission color in this version (since colored transmission in unphysical, there will still be a dedicated tint input for it if you really want it), the idea here is to implement basic volume controls (homogenous absorption, maybe also scattering) in the main Principled BSDF.

Agree, it will be fantastic if there can be a volume output in the Principled BSDF. I don’t think we need the dedicated unphysical transmission tint input anymore since as I tested the clearcoat tint would work in this case.

1 Like

Cycles GPU compute and then adjust the Subsurface Scale

CUDA would throw me this error:
image

and OptiX would just give me a black cube:
image

CUDA error in console:

Launch failed in CUDA queue copy_from_device (integrator_shade_surface integrator_sorted_paths_array prefix_sum)

Refer to the Cycles GPU rendering documentation for possible solutions:
https://docs.blender.org/manual/en/latest/render/cycles/gpu_rendering.html

I might be wrong (I went through this yesterday) but I think there’s something missing.
AFAIK, Iridescence is a word used for two different phenomena:

  1. Inteference-based iridescence: A.k.a. Thin-film interference, usually found in the infamous puddles of oil and oil stains on our phone screens. Creates a sort of rainbow effect on the coloring of the surface.
  2. Dispersion-based iridescence: An effect that spreads the colors from light in different directions, so it can create similar rainbow effects, but ones that change depending on the angle, unlike the other one.

If I read it right, this would account for interference iridescence, but not for dispersion iridescence, is that right? Maybe this is all super obvious, or I’m incredibly wrong, but I thought it pertinent to mention in cast it’s not.

In any case, very excited about this! Thank you for all your work!

Should work now.

I’ll have a look.

Yeah, what I mean is the thin-film effect where lower- and higher-order reflections interfere with each other, the one that always gets demonstrated on soap bubbles.
I’m not really sure what you mean with the other one, it sounds like dispersion?

1 Like

Ah yes! Sorry, forgot the proper name for it. Corrected it.

First - big thanks that this finally gets updated! The V2 passes the white furnace test - which is awesome - but the 1 sample live preview suffers a lot compared to the old version:

8 Likes

Hi! Excuse my ignorance, but what is the white furnace test?

basically checking if the shader loses, or worse, adds energy to the scene - the normal principled shader does so unfortunately - as you can see on the left image, the rim is brighter than the surrounding.
(You have to set the diffuse to full white, which is physically not really possible, but for the sake of the test required)

This is now fixed with the new version.
some more details: researchgate link

4 Likes

This is most likely caused by this:

Things that need to be fixed

  • Importance sampling weights
    Important sampling weights aren’t adjusted to albedo yet, leading to high noise

Source: ⚓ T99447 Principled v2 BSDF

A question, why is clearcoat tint changing the hue when you change the clearcoat strength?:
image

image

I would expect to see a desaturated orange instead of yellow. Since the tint is a non-physical setting I don’t think it’s because of anything physically related. I think we should have the hue unchanged when adjusting the clearcoat strength.

I believe I’ve found a bug. I have reported it below.
Blender version: 3.3.0 Alpha, branch: principled-v2, commit date: 2022-07-05 20:15, hash: rBfe3d875dabcf


Diffuse surfaces with high IOR (IOR of 4 is when it starts to become noticeable) reflect more light than they receive.

This is most noticeable when you place two objects with the same material close together with a high number of light ray bounces, and see that the space between them is really bright.

I have provided a video below show casing this issue.

Yep, known issue and easy-ish to fix, I just haven’t done it yet.

Currently the strength of the tint is also controlled by the clearcoat slider, but yeah, it doesn’t actually make sense. I’ll change it.

This one isn’t, actually. It’s supposed to model volumetric absorption in the clearcoat layer, which is also why its strength increases at shallow angles (longer ray distance through the layer).

Hm, interesting, I’ll have a look. Currently the albedo tables only cover the 1-3 range for IOR, since that’s where physical materials generally are. To be honest, the “fix” might be to limit IOR and handle artistic demand for stronger highlights through the nonphysical controls.

4 Likes

bug report copypasta:
System Information
Operating system: Arch linux (kernel 5.18.9-arch1-1) with KDE Plasma (Wayland)
Graphics card: Intel Corporation HD Graphics 5500

Blender Version
Broken: Commit fe3d875dabcf
Worked: Unknown, could not find earlier builds{F13265802}

Short description of error
Specular lighting in the Principled BSDF shader is broken, even on GGX and multiscatter GGX.
Issues include: flat shading on polygons and incorrect strength. (As can be seen in the attachment, which shows a smooth shaded shpere with a black base color, and IOR 1.5)

Exact steps for others to reproduce the error
This can be seen by switching to shading view, but is more easily seen on metallic materials, or objects with a black base color.
b3d-bugreport