我在 Qt 上摆弄了 OpenGL。但现在我想要复杂的场景。(加载了多个 COLLADA/MD2 模型)。
为此,我正在考虑使用 OpenSceneGraph (OSG)。是否可以将 OSG 与 Qt 集成?如果有怎么办?
谢谢。
我在 Qt 上摆弄了 OpenGL。但现在我想要复杂的场景。(加载了多个 COLLADA/MD2 模型)。
为此,我正在考虑使用 OpenSceneGraph (OSG)。是否可以将 OSG 与 Qt 集成?如果有怎么办?
谢谢。
OpenSceneGraph 有一个 osgQt 库,可以轻松地将 OpenSceneGraph 集成到 Qt 中。前往样本,特别是osgviewerQt样本!
是的——我已经有一年没有在 OSG 上工作了,但是 OSG 中有一个非常好的 Qt 小部件,它对于商业产品来说已经足够好了。
随着 4.8 中 openGL 的新改进,它应该会更好
您可能应该搜索osg 论坛
只是指出另一个资源(与 QOpenGLWidget 一起使用):Bastian Rieck 的一篇文章让 Qt 和 OpenSceneGraph 玩得很好。对于那些有兴趣在不同小部件上渲染不同场景同时仅按需执行更新(没有计时器)的人来说,这将很有用。这篇文章有一个指向源代码的链接。
我写了一个从 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上找到。