我正在寻找如何在Phong照明模型中表示阴影的描述。你可以在这里看看Phong阴影:http://en.wikipedia.org/wiki/Phong_shading
我想很多人可能在不知不觉中熟悉它。
所以关于这个问题:我已经在我的图形程序中实现了阴影贴图,现在我想知道如何应用阴影,我在片段着色器中有以下内容:
vec3 rgb_to_grayscale_luminosity(vec3 color) {
float value = color.r * 0.21 + color.g * 0.71 + color.b * 0.07;
return vec3(value);
}
void main(void) {
...
//apply shadow and write color
float shadow_value = textureProj(shadow_tex, fs_in.shadow_coord);
if (shadow_value < 0.9999) {
//in shadow
color = vec4(rgb_to_grayscale_luminosity(ambient + diffuse), 1.0);
}
else {
//no shadow
color = vec4(ambient + diffuse + specular, 1.0);
}
}
我目前正遵守以下限制:
我首先想知道这是否是一个正确的模型,其次是一个具体的问题:
是否应该在阴影中考虑漫反射光照?