我只是在处理每个片段照明,在 Visual Studio 2010 C++ 中工作并使用 GLSL,由于某种原因,只有这个片段着色器有问题,我已经通过了有效的片段着色器,我所有的顶点着色器都工作了,所以这与这个特定的人有关。基本上我的着色器看起来像这样:
#version 120
varying vec3 normal;
varying vec3 lightDir;
varying vec4 ambient;
varying vec4 diffuse;
void main()
{
float NdotL = max(dot(lightDir,normalize(normal)),0.0);
gl_FragColor = vec4((NdotL * diffuse.rgb + ambient.rgb), gl_FrontMaterial.diffuse.a);
}
有没有人有任何想法可以提供帮助?正如我所说,我已经将多个着色器加载到程序中,但只有这家伙不起作用
编辑:将 vec3 切换为浮点数,仍然遇到同样的问题。停!