在 OS X 上的 QT4 中启用 OpenGL Core Profile
我刚刚升级到 Lion,并尝试使用 GLSL 1.50 进行一些练习编码,但是我无法让我的代码在 OpenGL 2.1 以上运行,因此在尝试编译我的着色器时出现“版本‘150’不受支持”错误。
设置如下: 我在 OS X 10.7.2 中使用 2 x 2.8Ghz 四核 Xeon 和 GeForce 8800GT,并使用 QT Creator 2.3 和 QT Creator 2.3。 QT 版本 4.7。 为了设置我的 OpenGL 上下文,我使用了一个从 QGLWidget 派生的类。 由于我计划拥有第二个具有类似设置的 QGLWidget,我的目标是更改 QGLWidget 的默认格式,如下所示:
QApplication app(argc, argv);
QGLFormat f;
f.setVersion(3, 2);
f.setProfile(QGLFormat::CoreProfile);
QGLFormat::setDefaultFormat(f);
GUIVolumePanel* pvp = new GUIVolumePanel(prc, x, y, z);
std::tr1::shared_ptr<GUIMainWindow> prog(new GUIMainWindow(pvp));
但是,这似乎对我的 OpenGL 上下文没有影响,我不知所措找出原因。
I just upgraded to Lion and am trying to get some practice coding with GLSL 1.50, however I can't get my code to run above OpenGL 2.1 thus I get "version '150' is not supported" errors when trying to compile my shaders.
The set up is as follows:
I am using 2 x 2.8Ghz Quad-Core Xeons with a GeForce 8800GT in OS X 10.7.2 and using QT creator 2.3 & QT version 4.7.
To set up my OpenGL context I use a class derived from QGLWidget.
As I plan to have a second QGLWidget with a similar setup, my aim has been to change the default format for my QGLWidget(s) like so:
QApplication app(argc, argv);
QGLFormat f;
f.setVersion(3, 2);
f.setProfile(QGLFormat::CoreProfile);
QGLFormat::setDefaultFormat(f);
GUIVolumePanel* pvp = new GUIVolumePanel(prc, x, y, z);
std::tr1::shared_ptr<GUIMainWindow> prog(new GUIMainWindow(pvp));
However this appears to have no effect on my OpenGL context and I am at a loss as to figure out why.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我用谷歌搜索并找到
http://developer.qt.nokia.com/forums/viewthread/ 8047
这让我认为 4.7 还没有直接支持它。那里发布了一些代码,可以帮助您解决问题。您也可以尝试 qt 4.8 rc。
鉴于 Lion 在 qt 4.7 发布后才发布,我不认为它能立即运行。
I Googled it and found
http://developer.qt.nokia.com/forums/viewthread/8047
which leads me to think 4.7 does not support it directly yet. There is some code posted there that might get you going as a work around. You might also try qt 4.8 rc.
Given that Lion came out after qt 4.7 was out I would not expect it to work right off.