我有配备 Radeon HD6750、MacOS 10.7.5 的 MacBook pro,我发现它应该支持 OpenGL 3.2 和 GLSL 1.5 proof。不幸的是,当我尝试使用着色器(OpenVDB 查看器)构建一个第三方应用程序时,它返回我的硬件不支持#version 130
. 代码如下:
mShader.setVertShader(
"#version 130\n
"in vec3 vertex;\n"
"in vec3 color;\n"
"out vec4 f_color;\n"
"void main() {\n"
"f_color = vec4(color, 1.0);\n"
"gl_Position = gl_ModelViewProjectionMatrix * vec4(vertex, 1.0);}\n");
//check that it is shader and add source
glCompileShader(mVertShader);
char buffer[256];
int l = 0;
glGetShaderInfoLog(mVertShader, 256, &l, buffer);
if(GL_NO_ERROR != glGetError()) throw "Error: Unable to compile vertex shader.";
我安装了 OpenGL 扩展查看器,它告诉我着色语言版本是 1.20,OpenGL 版本是 2.1(完全支持,3.2 中的一些功能可用)。如果我的硬件能够支持更新的版本,我不想使用 GLSL 1.2。您知道我的驱动程序/硬件出了什么问题以及如何解决这个问题吗?