5-1高级光照

65 阅读1分钟

布林冯氏光照:在镜面反射光中,视线和反射光源夹角大于90度,变为0.0。所以在Blinn-Phong着色模型中使用半程向量(光线与视线夹角一半方向上的向量),当半程向量与法线向量越接近时,镜面光分量就越大

vec3 lightDir = normalize(lightPos - FragPos);
vec3 viewDir = normalize(viewPos - FragPos);
vec3 halfwayDir = normalize(lightDir + viewDir);
float spec = pow(max(dot(normal, halfwayDir), 0.0), shininess);
vec3 specular = lightColor * spec;