QT对OPenGL的封装

QT对OPenGL的封装

提起3D渲染大家应该都会想起OpenGL这个开源的图形学渲染库,它是目前图形学领域的工业标准之一,具有广泛的应用前景。虽然OpenGL的开发库也提供了大量的附属库包括GLUT等用于界面显示,但这些图形化界面相比与QT而言开发过程显得十分不方便,幸运的是QT目前已经提供了对于OpenGL的全方面支持,既可以直接使用OpenGL底层函数也可以运用Qt封装好的类进行实现,保证便捷性的同时不失灵活性,这对于想要开发开发出基于OpenGL界面的开发者来说是一个好消息。最近自己也有这方面的打算,刚刚接触了几天,记忆力不行了不行了,简单记录下一些基本思路,以便后续复习吧。

1:QT中支持OpenGL的类
QT进入5.0版本后,QT对OpenGL显示界面的支持结构有了较大的调整,主要整合到QT GUI中QWindow和QWidget中QOpenGLWidget两个类中。为了方便进行界面设计,一般直接继承QOpenGLWidget作为窗口部件进行布局处理。

2:OpenGL底层函数的调用
QT将OpenGL中的底层函数都封装在一个命名为QOPenGLFunctions的类中,新定义的类继承该类后即可直接对底层函数进行调用。其中可以通过QOPenGLFunctions_N_N_Cor中N的数值来制定具体的OpenGL的底层函数库版本。

3:OpenGL基本概念的迁移
在OpenGL中比较重要的几个数据存储结构包括VAO(vertex array object)、VBO(vertex buffer object)、VEO(vertex index object),他们分别对应存储数据过程中的数据结构管理、顶点数据缓存区域以及顶点数据索引。在QT中分别对用QOPenGLVertexArrayObject、QOpenGLBuffer,其中VE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值