在Nexus 7上编译着色器时应用程序失败

时间:2014-08-20 10:47:30

标签: android android-ndk glsl opengl-es-2.0

应用程序在Nexus 7和Nexus 5上的编译着色器上失败,但在galaxy s3上一切正常。 这是不编译的着色器。

#define FRAGMENT_SHADER
#ifdef VERTEX_SHADER
void main()
{
    gl_Position = vec4( atbCoord.x, atbCoord.y, 0.0, 1.0 );
}
#endif
#ifdef FRAGMENT_SHADER
void main()
{
    gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
}
#endif

我正在使用GLSurfaceView和OpenGL ES 2。

这个着色器有什么问题?

1 个答案:

答案 0 :(得分:0)

如果有人谷歌这个。

如果着色器编译在运行时在Nexus 5和Nexus 7上应用程序失败,请检查是否有新的行符号,即' \ n'在最后着色器源,因为这可能是问题。着色器源应该在源代码的末尾有行尾。