【发布时间】:2010-09-01 02:21:06
【问题描述】:
在 NVIDIA 上使用“#version 330 core”,
通过使用 glBindAttribLocation(program, 0, "in_Vertex");输入顶点与“in vec4 in_Vertex;”一起使用。但是,我注意到客户端应用程序中没有 OGL 函数调用,它仍然有效。它似乎是“默认的第一个输入变量”。为什么?它应该被省略还是通过 glBindAttribLocation 显式连接到它? [根据标准,理想是什么?] 还有“in vec4 gl_Vertex;”在规范将其称为已弃用并且着色器的编译器没有给出任何警告时工作。为什么?我本来希望它至少会发出警告。我猜最后一个问题可能是编译器(GLSL 编译器)中的错误,但第一个问题尤其令人费解。
【问题讨论】: