2
如何正确组合漫反射和镜面反射项?
据我了解,在BRDF中,菲涅耳术语告诉我们光子撞击表面时被反射或折射的可能性。 反射光子将有助于镜面项,而折射光子将有助于散射项。因此,当以基于物理的方式确定光对材料颜色的贡献时,我很想写: // Assuming for example: // diffuse = dot(L, N); // specular = pow(dot(H, N), alpha) * (alpha + 2.0) / 8.0; // fresnel = f0 + (1.0 - f0) * pow(1.0 - dot(E, H), 5.0); color = lightIntensity * Lerp(diffuse * albedo, specular, fresnel); 但是,我认为我从未见过这样写过。我已经看到镜面反射项是根据菲涅耳项进行加权的,而不是弥散项。塞巴斯蒂安·拉加德 SébastienLagarde)在其关于PBR的大量引用文章中甚至指出,使用加权扩散项是不正确的。(1 − F)(1个-F)(1 …