-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Enhancement]Support Transmission of PBR #1751
Comments
Hi @whatisor ! Usdz uses the UsdPreviewSurface material specification, which has a perhaps unorthodox (compared to the references you provided) parameterization, but does allow for modeling optical transparency. The opacity parameter is by default interpreted as a transmission parameter describing optical transparency (note in its description it stipulates that a fully transparent object still has a specular response). When opacityThreshoold is non-zero, however, the interpretation of opacity changes, and it becomes a binary "presence" parameter, i.e. a mask. So UsdPreviewSurface does lack the ability to combine optical transparency with presence, and has no "pure" alpha-as-coverage (if a renderer implements UsdPreviewSurface's opacity as alpha-to-coverage on a surface that has a specular response, that would be considered off-spec). But it does support optical transparency, the main addition of the Khronos extension. Is that your primary concern, or is it the feature combinations that you find lacking? |
Filed as internal issue #USD-7156 |
I think it is lacking feature we should support |
Right. So, UsdPreviewSurface matched the intersection of what was supported by game engines four or so years ago when it was developed, and in the interests of stability, we haven't changed it much since then, beyond clarifying some of the behaviors and adding a Transform2d node. But as you point out, @whatisor , the industry has continued to evolve what "baseline/commodity PBR" means. I am unsure if the best way forward is to keep evolving UsdPreviewSurface to keep up, or leverage the flexibility and power of the MaterialX standard, now that HdStorm supports it. I think this is a question we should work out with the community. |
Can we support this parameters in usdz?
https://github.com/KhronosGroup/glTF/blob/main/extensions/2.0/Khronos/KHR_materials_transmission/README.md
Ref
https://threejs.org/examples/webgl_materials_physical_transmission.html
It is abit similar to reflection but not all( because metalness = 0)
The text was updated successfully, but these errors were encountered: