はい、これは正しいです:たぶん私はあなたの質問に幾分関連していると思います。このQtの四半期を見ています。 OpenGL
は直接framebuffer
に引きます。 simplegl
ドライバは、QWS
のラスタペイントエンジンを使用して描画されたものを処理しないため、黒しか表示されません。
simplegl
を「すべて」とすると、フルスクリーンウィンドウのEGL
にOpenGL
を使用してすべてを描画することを意味しますか?これはいくつかの仮定の下で可能です。 Qt OpenGL paint engine
を使用してレンダリングするすべてのアプリケーションを書き込む必要があります(OpenGLグラフィックシステムはQt/E
の下ではサポートされていません)。これはQtWebKit
でも可能ですが、今やっています。これは、すべてがハードウェアアクセラレーションを使用してレンダリングされることを意味するわけではありません。実際にハードウェアをすべて高速化するには、アプリケーションを「適切な方法で」書く必要があります。この場合、マウスポインタを別の方法で処理する必要があると考えてください。
もう1つの方法は、raster paint engine
を使用してQt
アプリケーションを使用できるように、simplegl
ドライバを変更することです。これにはいくつかの制限があります。 Qt
は、blitを使用してOpenGL
に独自のウィンドウを配置できます。これを行う方法を知るには、Qt
ソースツリー内のフレームバッファードライバーを探します。その後、共通のQt
アプリケーションとOpenGL
Qt
アプリケーションを何らかの形で持つことができます。私もこれをやっています。とにかくすべてができるわけではありません。
編集:私はあなたがすでにしていると確信していますが、その場合は、このhttp://doc.qt.io/qt-4.8/qt-embeddedlinux-opengl.htmlを十分に注意してください。
「SimpleGL」とは何ですか? –
SimpleGlはeglプラグインで、単一のフルスクリーンサーフェスコンテキストを提供します。 http://qt.gitorious.org/qt-labs/simplegl – hari