4

当我意识到我正在使用 OpenGL 2.1 和 GLSL 1.2 时,我的着色器出现了问题。由于直到 1.5 才支持几何着色器,我需要使用另一个 OpenGL GLSL 版本。但是怎么做?我想我最多阅读了 15 个线程,但对我没有任何帮助。

我的 Mac 使用 PyOpenGL 3.0.2 在 10.9.3 上运行。我已经下载了一个 OpenGL 扩展查看器来查看支持哪些版本和扩展。Intel HD Graphics 4000 和 NVIDIA GeForce 650M 在 Core Profile 中支持 OpenGL 3.2,但在 Compatibility Profile 中不支持。

我认为兼容性配置文件是我无法编译几何着色器的原因。它只支持最高 2.1 的 OpenGL。

我试图像这样更改个人资料:

glutInitContextVersion (3, 2)
glutInitContextProfile(GLUT_CORE_PROFILE)

但是这两个函数都是未定义的。而且 GL_SHADING_LANGUAGE_VERSION (1.2) 和 GL_VERSION 2.1 还是一样的。

由于我#version 150 core在几何着色器中使用了另一个线程,但这也没有效果。

如何更改上下文/版本以使用我的几何着色器?

4

0 回答 0