查看: 1603|回复: 2

关于将cegui做的面板嵌入到QT里

[复制链接]

该用户从未签到

发表于 2010-9-20 14:03:12 | 显示全部楼层 |阅读模式
请问:
把cegui做的面板嵌入到QT里,
总是抛出异常:
OpenGLRenderer failed to initialise the GLEW library. Missing GL version"

这个问题在控制台程序里遇到过,加了下面的代码就好了:
  setThreadingModel(osgViewer::Viewer::SingleThreaded);
  realize();
  makeCurrent();

但是在ViewerQT 里添加上述代码却没有用。
ViewerQT(QWidget * parent = 0, const char * name = 0, const QGLWidget * shareWidget = 0, WindowFlags f = 0):
  AdapterWidget( parent, name, shareWidget, f )
  {
  getCamera()->setViewport(new osg::Viewport(0,0,width(),height()));
  getCamera()->setProjectionMatrixAsPerspective(30.0f, static_cast<double>(width())/static_cast<double>(height()), 1.0f, 10000.0f);
  getCamera()->setGraphicsContext(getGraphicsWindow());
  setThreadingModel(osgViewer::Viewer::SingleThreaded);
  realize();
  makeCurrent();
  connect(&_timer, SIGNAL(timeout()), this, SLOT(updateGL()));
  _timer.start(10);
  }
  virtual void paintGL()
  {
  frame();
  }
  virtual void makeCurrent()
  {
  getCamera()->getGraphicsContext()->makeContextCurrent(this->_gw);
  }

...
}

   搞了一晚上,还没有头绪,晕死。

   多谢帮助!

该用户从未签到

发表于 2010-9-20 14:22:52 | 显示全部楼层
我没有看到您初始化cegui的代码,不知道您把它们放在哪里了

该用户从未签到

 楼主| 发表于 2010-9-25 16:05:05 | 显示全部楼层
中秋没有干活,理了理思路,
delta3D 基于cegui实现的GUI类是可以插入到qt里的。
准备短时间里使用这个了,等过段时间把delta3d 摸熟了,在考虑把它们剥离出来。
多谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表