GLSL奇怪的编译错误

时间:2015-08-10 01:28:42

标签: java opengl glsl shader lwjgl

我在网上搜索过但无法找到原因。我在这里有顶点和片段着色器:

// Vertex Shader
#version 150 core

in vec3 position;

out vec3 color;

void main(void) {

gl_Position = vec4(position.x, position,y, position.z, 1.0);

color = vec3(position.x + 1.0, position,y + 1.0, position.z + 1.0);

}

//Fragment Shader
#version 150 core

in vec3 color;

out vec4 finalColor;

void main(void) {

finalColor = vec4(1.0, 0.0, 0.0, 1.0);

}

我多次查看它,虽然它没有作为着色器的真正用途,但代码中仍然没有任何明显的错误。当我尝试编译它时,我收到以下错误:

  

错误:0:5:'y':未声明的标识符

     

错误:0:5:'构造函数':参数太多

     

错误:0:6:'构造函数':参数太多了   奇怪的是我在顶点或片段着色器上得到错误,这取决于我首先插入glCompileShader()的那个。我尝试过更换版本号,但它不起作用,我不再觉得今天编程>。>

1 个答案:

答案 0 :(得分:4)

位置 y大声笑。你有逗号而不是句号。它应该是位置**。** y。