将OpenSceneGraph与Qt集成

时间:2012-01-08 20:17:50

标签: qt opengl scenegraph openscenegraph

我在Qt上摆弄了OpenGL。但现在我想拥有复杂的场景。 (加载了多个COLLADA / MD2型号)。

为此,我正在考虑使用OpenSceneGraph(OSG)。 是否可以将OSG与Qt 集成?如果是这样的话怎么样?

感谢。

4 个答案:

答案 0 :(得分:15)

OpenSceneGraph 3.0.x现在有一个osgQt库,可以很容易地将OpenSceneGraph集成到Qt中。前往样本,特别是osgviewerQt一个!

答案 1 :(得分:1)

是的 - 我没有在OSG上工作一年,但OSG中有一个非常好的Qt小部件,对于商业产品来说效果很好。

随着4.8中openGL的新改进,它应该会更好

您应该搜索osg forum

答案 2 :(得分:1)

只是指出另一个资源(适用于QOpenGLWidget):Bastian Rieck撰写的文章Making Qt and OpenSceneGraph play nice。对于那些有兴趣在不同小部件上呈现不同场景的人有用,同时仅执行按需更新(无计时器)。这篇文章有一个源代码的链接。

答案 3 :(得分:0)

我写了一个从QOpenGLWidget派生的简单类,可以用作普通的小部件,它封装了osgViewer :: GraphicsWindowEmbedded,并且(可选)允许使用小部件内的鼠标来控制摄像机。

它的用法很简单:

#include <QApplication>
#include <QMainWindow>

#include "QtOSGWidget.h"

int main(int argc, char** argv)
{
    QApplication qapp(argc, argv);
    QMainWindow window;

    QtOSGWidget widget(&window);

    window.setCentralWidget(&widget);
    window.show();
    return qapp.exec();
}

可以在GitHub上找到它。