我是Qt的新手,我正在尝试配置我的Qt5环境以使用OpenGL小部件。我已经在线跟踪了一些教程和花絮,但似乎没有任何工作。我在Designer中创建了一个窗口,然后手动将我自己的QGLWidget子类添加到窗口的布局中(按照教程说明)。我也填写了paintGL
initializeGL
和resizeGL
函数。我以前使用的是过剩的glew,所以我把它扔进了Qt的构建路径。我已经了解到,为了在Qt中使用glew,你不能包含Qt OpenGL头文件。我还定义了QT_NO_OPENGL_ES
和QT_NO_OPENGL_ES_2
。
然而,无论我做什么,我都不能让我的窗户显示任何东西,只有黑色 - 它甚至不会清晰的颜色。此外,我在我的widget类中有一些打印语句,以指示OpenGL和GLSL版本,但在我退出窗口之前没有任何打印。从那里我得到了Glew错误“Missing GL version”。 更新:我不知道这是因为有不同的窗口(我不熟悉),或者这些方法奇怪地只是在我关闭窗口之前没有被调用(为什么?)
我尝试过各种各样的互联网建议,但没有任何帮助。我想要的就是能够使用最新的(我的comp上的4.2)OpenGL和Qt(用于小部件)。
技术规格:
答案 0 :(得分:0)
我不知道你在哪个平台上,但我在使用QGLWidget构建一个简单的应用程序时遇到了同样的问题(没有任何反应),我写了一个小指南,希望它可以帮助你。
所以,我建议你是一个全新的装置。我从未使用过glew,所以没有它我的解决方案。
如果您需要的是修复当前设置,请不要阅读下一步。
简单方法:
1:安装qt-windows-opensource-5.0.2-msvc2010_32_opengl-x86-offline
2:从Microsoft安装Visual Studio Express(免费,我们需要其编译器)
3:请确保您在windows / system32中有glu32.dll,glut32.dll,opengl32.dll以及 窗户/ SYSWOW64
4:在Qt中设置msvc x86编译器
艰难的方式:
如果你正在使用VS2012编译器,你想在这里使用它(你必须重新编译QT):
1:安装qt-windows-opensource-5.0.1-mingw47_32-x86-offline(在安装过程中检查语音“Souce”)
2:从Microsoft安装Visual Studio Express(免费,我们需要其编译器)
3:安装Strawberry Perl 5.16.3.1(32位)
4:创建一个新的文件夹,如C:\ Qt \ Qt5.0.1 \ 5.0.1 \ Src \ NuovaCartella
5:打开VS2012 x86命令并将其放在创建的文件夹
上6:粘贴此
C:\ Qt \ Qt5.0.1 \ 5.0.1 \ Src \ qtbase \ configure -developer-build -opensource -nomake examples -nomake tests -opengl desktop -mp
7: nmake确认
8:请确保您在windows / system32和windows / sysWOW64中有glu32.dll,glut32.dll,opengl32.dll
9:打开
&QT间期GT;工具 - >选项 - >构建与安培;运行 - > QtVersion->添加
并设置你可以在C:\ Qt \ Qt5.0.1 \ 5.0.1 \ Src \ NuovaCartella \ bin中找到的qmake
10:转到
选项>构建与安培;运行 - > Kits->添加
并设置C ++编译器v11.0 x86并在标签QtVersion下设置Qt 5.0.1(NuovaCartella)
希望它有所帮助。