我想要的是一个Qt应用程序,它使用Horde3D显示三维场景,并使用Horde三维(或OpenGL)在三维场景顶部绘制QWidget。
基本上,我想为我的3D场景添加UI。这个用户界面应该使用OpenGL绘制。
我已经成功地遵循了这个教程:用OpenGL加速你的小工具,以及这个教程-用Qt4设置部落。
但是当我尝试组合它们时,我可以看到我的3D场景,但没有UI控件。我在Horde3d中使用QGraphicsView、QGraphicsScene和QGLWidget。如果我不使用Horde3D(我的意思是不要初始化它),那么我的UI控件就会正确呈现。
我在Horde3D论坛上也遇到了同样的问题。
我该如何解决?
使用drawBrackground()绘制以使用Horde3D执行OpenGL渲染时,最重要的是必须保留GL状态,确保在渲染Horde3D场景之前保存GL状态,并在渲染之后恢复。