Java 错误:0:3:错误(#279)布局限定符无效';地点';

Java 错误:0:3:错误(#279)布局限定符无效';地点';,java,opengl,glsl,shader,vertex-shader,Java,Opengl,Glsl,Shader,Vertex Shader,我试图遵循一个教程,当我试图编译他制作的顶点着色器时,我得到以下输出: Vertex shader failed to compile with the following errors: ERROR: 0:3: error(#279) Invalid layout qualifier 'location' ERROR: error(#273) 1 compilation errors. No code generated 我使用GLSL 3.2.9232和我的代码: #version 15

我试图遵循一个教程,当我试图编译他制作的顶点着色器时,我得到以下输出:

Vertex shader failed to compile with the following errors:
ERROR: 0:3: error(#279) Invalid layout qualifier 'location'
ERROR: error(#273) 1 compilation errors.  No code generated
我使用GLSL 3.2.9232和我的代码:

#version 150

layout (location = 0) in vec3 position;

void main()
{
    gl_Position = vec4(0.25 * position, 1.0);
}

GLSL 3.30中引入了输入布局位置限定符(请参阅),不能在GLSL 1.50中使用。比较和

切换到glsl 3.30:

#版本150

#版本330
如果系统不支持GLSL 3.30,则必须删除布局限定符

vec3位置的布局(位置=0)

处于vec3位置;
在链接程序之前,可以使用指定属性位置:

glBindAttribLocation(program, 0, "position"); // has to be done before glLinkProgram
glLinkProgram(program)

那我该怎么办?如果我把#版本330放进去,它会告诉我该版本不受支持哦,哦,我以为是alli,我终于解决了三角形的问题你帮了我很多