1

OpenGL と QML の両方の利点を活用できるアプリケーションを作成したいと考えています。QOpenGLWidgetその上にQMLを使用して配置したいItemItem部分的に透明になります。使用すれば可能かもしれませんが、QQuickViewすべての透明部分を黒色でカバーできることがわかりました。私が必要とするもの (サンプル プロジェクト) を達成するための試みは、私の GitHub hereにあります。

すべての子を持つQMLを、完全に不透明でない場所で、の下に表示されるようにItem既存のものにレンダリングすることは可能ですか?QWidgetItemItem

最悪の場合、QWidgetItemオブジェクトからビットマップを作成し、何らかの方法でそれらを結合して表示できると思いますが、もっと簡単な方法を探しています。簡単な方法がなければ、これら 2 つを同時に表示することはできません。

QML で OpenGL 機能を直接使用したくない理由は、これです。たぶん、リンクに記載されている回避策を使用する必要があります。

4

1 に答える 1

0

ウィジェットは必要ないと思います。QQuickFramebufferObjectクラスを使用して、QtQuick でカスタム レンダリングを行うことができます。コードはもうありませんが、以前はそれを行っていました。この記事は何をすべきかを説明しているようですhttps://blog.qt.io/blog/2015/05/11/integrating-custom-opengl-rendering-with-qt-quick-via-qquickframebufferobject/

于 2016-07-06T10:20:05.260 に答える