qt 用的qt5 opengll是哪个版本

求一个QT5.2一个用opengl画一个简单的正方形的例子之前Qt4的例子到QT5.2编译都出错了
opengl画一个,不会。
http://bbs.qter.org/forum.php?mod=viewthread&tid=783 亲测可用
为您推荐:
扫描下载二维码同主题-KDE与Qt编程技术-一直不明白opengl和非opengl版本有什么区别!
同主题阅读:一直不明白opengl和非opengl版本有什么区别!&&&&QT+OPENGL 多线程测试
&QT+OPENGL 多线程测试
本人原创,浅显易懂,QT+OPENGL多线程,采用2D纹理贴图的方式,多线程进行纹理拷贝和渲染。
若举报审核通过,可奖励20下载分
被举报人:
zhoukuanbin
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
VIP下载&&免积分60元/年(1200次)
您可能还需要
Q.为什么我点的下载下不了,但积分却被扣了
A. 由于下载人数众多,下载服务器做了并发的限制。若发现下载不了,请稍后再试,多次下载是不会重复扣分的。
Q.我的积分不多了,如何获取积分?
A. 获得积分,详细见。
完成任务获取积分。
论坛可用分兑换下载积分。
第一次绑定手机,将获得5个C币,C币可。
关注并绑定CSDNID,送10个下载分
下载资源意味着您已经同意遵守以下协议
资源的所有权益归上传用户所有
未经权益所有人同意,不得将资源中的内容挪作商业或盈利用途
CSDN下载频道仅提供交流平台,并不能对任何下载资源负责
下载资源中如有侵权或不适当内容,
本站不保证本站提供的资源的准确性,安全性和完整性,同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
开发技术下载排行
您当前C币:0&&&可兑换 0 下载积分
兑换下载分:&
消耗C币:0&
立即兑换&&
兑换成功你当前的下载分为 。前去下载资源
你下载资源过于频繁,请输入验证码
如何快速获得积分?
你已经下载过该资源,再次下载不需要扣除积分
QT+OPENGL 多线程测试
所需积分:2
剩余积分:0
扫描微信二维码精彩活动、课程更新抢先知
VIP会员,免积分下载
会员到期时间:日
剩余下载次数:1000
QT+OPENGL 多线程测试
剩余次数:&&&&有效期截止到:
你还不是VIP会员VIP会员享免积分 . 专属通道极速下载
VIP下载次数已满VIP会员享免积分 . 专属通道极速下载,请继续开通VIP会员
你的VIP会员已过期VIP会员享免积分 . 专属通道极速下载,请继续开通VIP会员Qt&5.0之后使用QtCreator(MinGW)进行OpenGL绘制实现方案
原来用的是Qt4.X的版本,大多也是和vs2008或者vs2010集成一起使用。后来考虑到平台可移植性,开始选用QtCreator作为IDE。恰巧那时Qt5.0.2也已经出道。1.Qt5.0以后版本下载地址:
更老的版本请注意最后有一个old version
<img WIDTH="216" HEIGHT="74"
ALT="Qt&5.0之后使用QtCreator(MinGW)进行OpenGL绘制实现方案"
TITLE="Qt&5.0之后使用QtCreator(MinGW)进行OpenGL绘制实现方案" />
2.Qt5.0以后下载的集成版本有一些是支持opengl
es的,如果使用传统的opengl会报错,比如报gl.h中的GLDouble重定义,所以为图方便并且不一定要使用MinGW编译器,要使用Vs,可以选用如下类似版本
3.如果选择了如上版本,opengl的问题大多可以解决,如果运行qtcreator后出现什么需要编译器的问题,可以按照如下进行操作
打开Tools-&Optings 选择 Build & Run,在选择Qt
Versions选项中看是否已经添加qmake路径,如C:\Qt\qt5.0.2\bin\qmake.exe,如果没有点击右边的Add添加进来,并点击右下角Apply运用,在看Compilers选项中是否有编译器,如MinGW
4.7 32bit,Microsoft Visual C++ Compiler 10.0
(x86),选中你要的,如果没有右边还是右Add可以添加,同时点击右下角Apply,最后在Kits选项中进行一些设置,正常可以看到Manual下有一个桌面(default),点击后出现一些设置,在Compiler中选择对应要使用的编译器,Debugger点击Auto-detect,或者也可以进行编辑选择对应的qmake.exe路径,最后在Qt
version中选择相应qmake.exe的版本最后点击OK退出即可。
ALT="Qt&5.0之后使用QtCreator(MinGW)进行OpenGL绘制实现方案"
TITLE="Qt&5.0之后使用QtCreator(MinGW)进行OpenGL绘制实现方案" />
此步骤可以参考
4.可以说5.1.0出现时qt的版本有很多了,所以可以找到如意的可以支持传统opengl和MInGW的版本下载了,所以,如果你的问题可以解决后面就没有必要继续看了。接下来针对,需要使用qt5.0.2,使用MinGW,使用Qtcreator,使用传统opengl进行渲染的问题提出解决方案。解决的方法就是自己下载qt的源码进行编译。
4.1 如下是qt5.0.2的代码下载地址,下载解压到某个盘中,我是在C:\Qt中。
在编译前有几个环境一定要,Perl,MinGW
&ActivePerl -- 必须安装
且版本&=5.14&&
安装TDM-MinGW
Qt有一个webkit跟网络有关的,我是用不到,所以想Rubby就没必要下了。
这些软件安装都挺容易,一路默认就可以了,接下来开始编译的过程,打开cmd.exe,到解压后的qt源码文件夹中,我是在C:\Qt\Src(我解压后对其很长的文件夹重命名为Src了),然后依次敲入指令
PATH=C:\Python27;C:\Perl\C:\mingw\
这条是设置python,perl,mingw的路径用的
configure.bat -debug-and-release -opensource
-confirm-license -platform win32-g++ -prefix "C:\Qt\qt5.0.2"
-opengl desktop -nomake tests -c++11
这条指令不是绝对的,其中注意-opengl
desktop就是生成传统opengl版本,是必须的,因为qt默认是生成angle,而angle支持opengl
es,关于configure后面参数可以参考文章,但是这篇文章不是针对5.0后的所以有一些参数已经没用了,如-no-webkit,加上没用的运行该指令是会报错的。如果要重新运行指令set
path需要重新打哦。其中prefix是你最后生成的qt要放的位置
mingw32-make
前面如果顺利,执行该命令需要很久的(我用了10来个小时),我以为都出错了,原来是正常的,configure参数设置好,这边可以更快的。同时这个命令后还可以添加一些参数加速编译,具体可参考如下博文。另外,这个步骤会将很多编译结果输出,所以可以加上以下两个参数
-continue&&当发生错误时,尽可能继续编译
-silent&进行make时只会显示警告和错误等,不会把编译指令也输出到屏幕上
参考博文为:
mingw32-make install
这个也可以加 -silent
其实这部分做的大概是将前面编译的结果复制到你-prefix指定的文件夹中,所以这个文件夹这一步才会出现,前面都是直接在Src中操作的,之后的Src会很大,按我的指令编译的结果有4.8G,编译结束就没用了,是可以删除的。我第一次执行这个命令,失败了,后来再执行了一次虽然有错误,但总归是可以用的,其中错误有不少,似乎是跟webkit有关的,可能是因为我没有配置相关环境所以生成有误吧。这个时间还比较短一点,半小时。
成功的标志就是-prefix对应的文件夹中有qmake.exe,并且按照3的方法设置可以正常使用opengl。
这个问题困扰了我一周了,我查了挺多资料,以上附的都是一些对我理解帮助较大的文章。希望分享出来能够帮到大家,尽快解决这个问题。
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。QT&OpenGL和QPainter的结合
QT中可以在QGLWidget上使用OpenGL命令绘制一个三维场景,也可以使用QPainter在QGLWidget上绘制二维图形。如下图Vowel
Cube例子。详见 Jasmin Blanchette写的C++ GUI Programming with Qt 4,
second edition
OpenGL和QPainter的结合"
TITLE="QT&OpenGL和QPainter的结合" />
VowelCube类派生自QGLWidget,使用QPainter绘制背景的渐变,然后使用OpenGL调用绘制立方体,接着使用renderText()绘制立方体角上的8个字母,最后使用QPainter和QTextDocument绘制图例。用户可以单击并拖动鼠标来旋转立方体,并且可以使用鼠标滚轮进行放大和缩小。
为有利于更新OpenGL的帧缓存,不使用QGLWidget的高级函数initialGL()、resizeGL()、paintGL(),而是采用QWidget的paintEvent().
可以在构造函数中调用createGradient()设置用来填充背景的QRadialGradient,并且调用createGLObject()创建OpenGL立方体对象,一遍稍后迅速重绘场景。构造函数中创建的OpenGL列表用来保存绘制的立方体的边,可以在析构函数中通过调用glDeleteLists()删除。
在paintEvent中,像普通的QWidget一样来设置QPainter,然后绘制背景、立方体以及图例。
绘制背景就是使用合适的画刷调用drawRect().本例中就是构造函数中创建的QRadialGradient。使用OpenGL绘制立方体时必须保存修改的OpenGL状态,包括属性、投影矩阵和模式视图矩阵。最后在适当的时候再恢复它。
本例的paintEvent实现具有以下通用模式:
1.创建一个QPainter
2.使用QPainter绘制背景
3.保存OpenGL状态
4.使用OpenGL操作绘制场景
5.恢复OpenGL状态
6.使用QPainter绘制前景
7.销毁QPainter
注意有时候该例编译时可能会遇到些例外错误
需注释掉构造函数中的这行:
setFormat(QGLFormat(QGL::SampleBuffers));
还要注意在OpenGL和QPainter结合使用时,如果开启glEnable(GL_CULL_FACE)可能会出现QPainter显示问题。如下图所示。要正确的显示QPainter,只在OpenGL绘制时开启,绘制完后关闭。
&<img src="/upload/112_10/00mage.gif" real_src ="/mw690/539d404e2&690" NAME="image_operate_1953"
ALT="QT&OpenGL和QPainter的结合"
TITLE="QT&OpenGL和QPainter的结合" /><img src="/upload/112_10/00mage.gif" real_src ="/mw690/539d" NAME="image_operate_64640"
ALT="QT&OpenGL和QPainter的结合"
TITLE="QT&OpenGL和QPainter的结合" />
文章评论 以下网友留言只代表其个人观点,不代表本网站的观点和立场。

我要回帖

更多关于 qt opengl widget 的文章

 

随机推荐