Open vorg opened 5 years ago
Our current BRDF model:
Layer | Distribution (D) | Visibility (V) | Fresnel (F) |
---|---|---|---|
Specular isotropic | D_GGX | V_Smith_GGX_Correlated | F_Schlick (f90 = 1) |
Specular anisotropic (TODO) | D_GGX_ANISOTROPIC | V_GGX_ANISOTROPIC | F_Schlick (f90 = 1) |
Clearcoat | D_GGX | V_Neubelt | F_Schlick (f0 = 0.04, f90 = 1) |
Sheen | D_Charlie | V_Charlie | F = 1 |
But we have duplicates and here are my improvement suggestions:
Specular isotropic layer:
F: Currently using HdotV (is that implementation from MaterialX?). It is the same as F_Schlick. => Use improved F_Schlick from filament instead
D:
Currently using MicrofacetDistribution function GGX, Trowbridge-Reitz
.
It is the same as D_GGX (used by clearcoat).
=> Use D_GGX
Specular anisotropic layer: implement
Iridescence: find out model
Clarify use of D_GGX and F_Schlick