我正在学习尝试使用 Java 和 LWJGL 学习 GLSL,但我目前遇到了基本顶点着色器的问题。
顶点着色器:
#version 120
void main() {
gl_Position = gl_Vertex * 0.5;
}
片段着色器:
#version 120
void main() {
gl_FragColor = vec4(1.0, 0.4, 0.4, 1.0);
}
渲染代码:
public void draw() {
glBindBuffer(GL_ARRAY_BUFFER, vbo);
glVertexPointer(3, GL_FLOAT, 0, 0L);
glBindBuffer(GL_ELEMENT_ARRAY_BUFFER, ibo);
glEnableClientState(GL_VERTEX_ARRAY);
glDrawElements(GL_TRIANGLES, size, GL_UNSIGNED_INT, 0);
glDisableClientState(GL_VERTEX_ARRAY);
}
编译没有产生错误,片段着色器工作正常,为我绘制的简单三角形着色。唯一的问题是我没有看到按预期缩小的三角形(0.5 因子),它的顶点保持不变。我究竟做错了什么?