2012-03-20 74 views

回答

5

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

如果你想要一些示例代码: https://github.com/dcbishop/g3test 在SRC /应用程序检查/ QT *

+0

谢谢。你的代码似乎很方便。我想我在围绕OpenGL上下文的初始化方面还有点麻烦。我相信我很快就会有更多的理解。 – circlingthesun 2012-03-21 13:14:18

+0

任何想法为什么我在编译代码时遇到这样的错误:CMakeFiles/g3test-qt.dir/src/Renderable/DemoScene.cpp.o:在函数'Program :: getUniformBlockIndex(char const *)const'中: /home/rickert/Workspace/g3test/src/Renderable /../ OpenGL/Program.hpp:94:对'glGetUniformBlockIndex'的未定义引用 – circlingthesun 2012-03-21 13:15:36

1

的QopenGL插件让你的背景,你再简单地覆盖initialiseGL,paintGL方法,你可以使用原始OpenGL调用直。

周围PBO和维也纳组织Qt的包装便于保存拼尽全力在Windows手动加载DLL,但不是真的有必要

相关问题