Open brechtvl opened 11 months ago
Thank you for pointing this out.
We could describe that the fuzz uses the normal of the layer underneath. In the case of partial coverage, that would be a blend of two fuzz lobes using normal from the base and coat layers. It would be expensive to evaluate, but implementations could approximate by "blending" normals.
Pushed a PR for this: https://github.com/AcademySoftwareFoundation/OpenPBR/pull/117
Can be closed, addressed in https://github.com/AcademySoftwareFoundation/OpenPBR/pull/117
Coat uses
geometry_coat_normal
, while other layers including fuzz usegeometry_normal
. Now that fuzz is on top of coat, this may no longer be correct.Consider a material with a bumpy base layer, and a smooth coat layer on top that fills in the bumps. The fuzz should then have a smooth normal as well?
A solution could be to blend
geometry_normal
andgeometry_coat_normal
withcoat_weight
, and use that as the fuzz normal?