Qt+;OpenGl&x2B;单纯形

Qt+;OpenGl&x2B;单纯形,qt,opengl,webkit,Qt,Opengl,Webkit,我已经在一个ARM平台上启用了qt+OpenGl+SimpleGl,并且能够运行OpenGl示例程序。 我还有一个qt+Webkit,它正在使用一个图形插件 我想对每件事都使用simpleGl上下文,而不是使用普通的图形屏幕。因此,当我尝试使用simpleGl运行Qt+Webkit时,我只得到一个空白屏幕 QT支持这个吗?如果是这样的话,我们怎么做呢?不幸的是,我对SimpleGL一无所知,但我知道有一种方法可以在QGLWidget中呈现标准的Qt小部件。或许可以看看这本Qt季刊,我认为它与您的

我已经在一个ARM平台上启用了qt+OpenGl+SimpleGl,并且能够运行OpenGl示例程序。 我还有一个qt+Webkit,它正在使用一个图形插件

我想对每件事都使用simpleGl上下文,而不是使用普通的图形屏幕。因此,当我尝试使用simpleGl运行Qt+Webkit时,我只得到一个空白屏幕


QT支持这个吗?如果是这样的话,我们怎么做呢?

不幸的是,我对SimpleGL一无所知,但我知道有一种方法可以在QGLWidget中呈现标准的Qt小部件。或许可以看看这本Qt季刊,我认为它与您的问题有些关联:


是的,这是正确的<代码>OpenGL直接绘制到
帧缓冲区
simplegl
驱动程序无法处理使用
QWS
的光栅绘制引擎绘制的内容,因此您可能只能看到黑色

simplegl
用于“一切”意味着您希望在
EGL
全屏窗口中使用
OpenGL
绘制一切?在某些假设下,这是可能的。您必须编写所有应用程序,以便使用
Qt OpenGL绘制引擎
(在
Qt/E
下不支持使用OpenGL图形系统)进行渲染。这对于
QtWebKit
也是可能的,我现在正在做。请注意,这并不意味着使用硬件加速渲染所有内容。您必须以“正确的方式”编写应用程序,以实现所有实际硬件加速。考虑到在这种情况下,您将不得不以其他方式处理鼠标指针。

另一种方法是只修改
simplegl
驱动程序,允许使用
光栅绘制引擎使用
Qt
应用程序。这也是可能的,但也有一些限制
Qt
可以使用blit在
OpenGL
上放置自己的窗口。在
Qt
源代码树中查找帧缓冲区驱动程序,了解如何执行此操作。然后,您可以通过某种方式使用通用的
Qt
应用程序和
OpenGL
Qt
应用程序。我也在这样做。无论如何,不是每件事都能做到


编辑:我相信你已经这么做了,但为了以防万一,请注意这一点。

SimpleGl是一个egl插件,它提供单一的全屏表面上下文。