3

アプリに QMainWindow を使用しており、openGL レンダリングを実行したいと考えています。2 つのアプローチ:

1) 中央ウィジェットとして QGLWidget を設定し、そこですべてのレンダリングを行います。

また

2) 中央ウィジェットとして QGraphicsView を設定し、ビューポートを QGLWidget に設定して、レンダリング コンテキストを作成し、シーンでレンダリングを行います。

効率的に考えるとどっちがいい?(前者の場合は (子ウィジェットとして) QGLWidgets になり、後者の場合は QGaphicsItems になるいくつかの他のオブジェクトを後で追加します)

4

1 に答える 1

4

ほとんどの場合、QGLWidget を使用して OpenGL で直接レンダリングする方が効率的ですが、レンダリングされた項目の動的セットを管理するには、より多くの作業が必要になります。QGraphicsView フレームワークを使用するとオーバーヘッドが発生しますが、レンダリングされたアイテムを管理するための多くの機能が提供されます。QGraphicsView のオーバーヘッドの量はさまざまな詳細に依存しますが、ほとんどの場合、ボトルネックにはならず、さまざまな使用パターンに合わせて調整できます。

于 2011-07-02T06:12:52.287 に答える