PBR Diffuse 漫反射

429 阅读1分钟

[公式]

  •  [公式]
  • Lambert漫反射模型在边缘上通常太暗,而通过尝试添加菲涅尔因子以使其在物理上更合理,但会导致其更暗。
  • 以在光滑表面的漫反射菲涅尔阴影和粗糙表面之间进行平滑过渡。
  • F90 掠射逆反射(grazing retroreflection response)以达到其特定值由粗糙度值确定,而不是简单为0。
// [Burley 2012, "Physically-Based Shading at Disney"]
float3 Diffuse_Burley_Disney( float3 DiffuseColor, float Roughness, float NoV, float NoL, float VoH )
{
	float FD90 = 0.5 + 2 * VoH * VoH * Roughness;
	float FdV = 1 + (FD90 - 1) * Pow5( 1 - NoV );
	float FdL = 1 + (FD90 - 1) * Pow5( 1 - NoL );
	return DiffuseColor * ( (1 / PI) * FdV * FdL );
}