OpenSceneGraph与Qt的集成

OpenSceneGraph与Qt的集成,qt,opengl,scenegraph,openscenegraph,Qt,Opengl,Scenegraph,Openscenegraph,我在Qt上摆弄OpenGL。但现在我想要复杂的场景。(加载了多个COLLADA/MD2型号) 为此,我考虑使用OpenSceneGraph(OSG)是否可以将OSG与Qt集成?如果是,如何解决 谢谢。是的-我已经有一年没有在OSG上工作了,但是OSG中有一个非常好的Qt小部件,可以很好地用于商业产品 随着openGL在4.8中的新改进,它应该会更好 您可能应该搜索OpenSceneGraph,它有一个osgQt库,可以轻松地将OpenSceneGraph集成到Qt中。去看看样品,特别是那个 只是

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

为此,我考虑使用OpenSceneGraph(OSG)是否可以将OSG与Qt集成?如果是,如何解决


谢谢。

是的-我已经有一年没有在OSG上工作了,但是OSG中有一个非常好的Qt小部件,可以很好地用于商业产品

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


您可能应该搜索

OpenSceneGraph,它有一个osgQt库,可以轻松地将OpenSceneGraph集成到Qt中。去看看样品,特别是那个

只是想指出另一个资源(与QOpenGLWidget合作):巴斯蒂安·里克的一篇文章。对于那些有兴趣在不同的窗口小部件上渲染不同场景的人来说,这将非常有用,同时只执行按需更新(不带计时器)。这篇文章有一个到源代码的链接。

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

其用法非常简单:

#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();
}
#包括
#包括
#包括“QtOSGWidget.h”
int main(int argc,字符**argv)
{
qapp应用程序qapp(argc、argv);
qmain窗口;
QtOSGWidget小部件(&窗口);
setCentralWidget(&widget);
window.show();
返回qapp.exec();
}

可以在上找到。

OSG的osgQt小部件当前在使用Qt5.x和多线程渲染时不起作用