在没有包装器的情况下在QT上使用OpenGL

时间:2012-03-20 23:14:00

标签: api qt opengl wrapper

我正在寻找一个与OpenGL结合使用的GUI工具包。 QT看起来很有希望但不幸的是它将大多数OpenGL函数包含在QT类中。我有什么方法可以在QT中创建OpenGL 3.3上下文,只使用标准的C API吗?

2 个答案:

答案 0 :(得分:5)

您无需使用大多数QT特定的OpenGL类。你需要QGLWidget上下文本身,告诉QT什么时候重新绘制小部件(它可以只是一个在你的QTGLWidget上调用updateGL()60秒的定时器)和事件处理。只需创建一个继承自QGLWiget的类,并将您的C类型OpenGL代码放在paintGL()函数中。

如果你想要一些示例代码: https://github.com/dcbishop/g3test 检查src / Application / QT *

答案 1 :(得分:1)

QopenGL小部件为您提供了上下文,然后您只需覆盖initialiseGL,paintGL方法,就可以直接使用原始的openGL调用。

围绕PBO和VBO的Qt包装器可以方便地保存在Windows上进行所有手动DLL加载但不是必需的