-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Clearcoat: Better separation of non-normative section, update trademarks. #1836
Conversation
@emackey lol - we both created basically the same PR at the same time :-) I'll close my PR :-) |
Thanks, I didn't intend for bold there, I switched it to italics. Markdown mixup. |
There are a few pieces of information that should be normative, otherwise consistency will be hard to achieve:
The following should be kept in the non-normative section:
The following could be added to the non-normative section to help with implementations:
|
I'm not sure I agree that this should be normative - maybe F0, which is defined as %4 in the spec - but I think the squared roughess is related to the rest of the BRDF implementation (which is non-normative) |
F0/IOR is a free parameter in the Fresnel term. Whatever Fresnel term you use in the end (full, Schlick), it has to be given to evaluate the material. With the 4% we make clear that the coat is glass-like/dielectric. Many more complex materials (Standard Surface, VRayMtl, ...) allow this parameter to be set by users. I cannot think of any reasons why a viewer wants to use a different value. In addition, the core spec also defines the reflectance for dielectric materials in the normative part, so it shouldn't be a problem for an extension. About squared roughness, we somehow have to characterize the BRDF lobe or shape of the specular highlight. We can probably develop some complicated definition, but I think characterizing it as "reasonable similar to GGX with squared roughness" is simpler and more intuitive. It also would allow low-end viewers to use for example a Phong BRDF with some magic formulas to match the highlights. Details (what is "reasonable similar"?) can be defined by certification. |
I moved some parts of the non-normative implementation section to the normative section on this branch: DassaultSystemes-Technology:clearcoat-normative, according to my previous comment. Please tell me what you think. If you like it, maybe it is possible to merge it somehow into this PR? Or should I create a new PR? |
Thanks @proog128. I've added that commit to this branch, it looks good to me. |
Any further comments on this? OK to merge? |
From my side I think it looks good :-) A very reasonable balance between what is normative and implementation notes - I think it will be ok for 3D commerce to certify this in the future by making sure the normative parts are followed. (together with the BRDF certification that is being worked on today) |
As pointed out by @rsahlin in #1688 (comment), the parameter list is normative, and the implementation notes are non-normative.
Previously this extension had them mixed together without clear demarcation, so I've separated them here.
Also the trademark list at the bottom has been updated, copied from the new one in
KHR_xmp
that includes newer Khronos standards such as ANARI etc.