QML アイテムのレイアウトを含む QML ファイルがあり、それらのアイテムの 1 つを QGLWidget にしたいと考えています。つまり、特定の QML アイテムにレンダリングしたいのです。
これを行う方法を知っている人はいますか?
QML アイテムのレイアウトを含む QML ファイルがあり、それらのアイテムの 1 つを QGLWidget にしたいと考えています。つまり、特定の QML アイテムにレンダリングしたいのです。
これを行う方法を知っている人はいますか?
最も簡単な方法は、C++ で実装された新しいカスタム コンポーネントを QML に提供することだと思います。何も準備ができていませんでした。
QPainter ::beginNative()関数を使用した後、QDeclarativeItem をサブクラス化し、ペイント関数に OpenGL コードを実装することができます。その後、この方法で新しいカスタム項目を QML に「エクスポート」できます。これは非常に単純で動作するはずですが、次のように QDeclarativeView のビューポートを QGLWidget に設定する必要があります。
QDeclarativeView view;
// This is needed because OpenGL viewport doesn't support partial updates.
view.setViewportUpdateMode(QGraphicsView::FullViewportUpdateMode);
view.setViewport(new QGLWidget);
または、アプリケーション全体で opengl グラフィック システムを使用する必要があります。別の方法はQML/3Dを使用することです。
このスレッドは、その他の情報を提供します。