菲涅尔效应是曲面上不同反射率的影响,具体取决于视角,当接近掠入射角时,会反射更多的光。通过计算曲面法线和视图方向之间的角度来近似此效果。这个角度越大,返回值就越大。这种效果通常用于实现边缘照明,在许多艺术风格中很常见。
void Unity_FresnelEffect_float(float3 Normal, float3 ViewDir, float Power, out float Out)
{
Out = pow((1.0 - saturate(dot(normalize(Normal), normalize(ViewDir)))), Power);
}
<< · Back Index ·>>