2013-08-07 13 views
14

Windows上でQtライブラリを試してみたいと考えています。彼らのdownloads pageでは、VS2012を使ってビルドされたバイナリは、OpenGLの有無にかかわらず、2つの形式で利用できることがわかりました。両者の違いは何ですか? OpenGLバージョンでは、OpenGLを使用して実装された特別なAPIを持っているのですか、あるいはすべてのQtレンダリングはOpenGLに依存していますか?また、DirectXを使用するQtのバージョンはありますか?WindowsおよびOpenGL用Qt C++ライブラリ

答えて

9

@Raman:OpenGLバリアントは、Qt4と同じようにデスクトップのOpenGLバージョンを使用しています。

非OpenGLバリアントは角度を使用しており、動作させるにはDirectX SDKの横にインストールする必要があります。角度は、directx APIとopengles APIの間のアダプタです。後者だけがQtのサポートを受けていますが、残念なことにdirectxドライバはopengl(es)よりもWindows上でうまく動作する傾向があります。 Qtの中でdirectxバックエンドをサポートする計画はないので、私たちはGoogleのAngleの仕事をその点で残しています。

最近、メーリングリストで議論されたことは、この決定はビルド時間ではなくランタイムに似ているということです。しかし、誰もまだその仕事をするために立ち上がっていません。うまくいけば、それは間もなく変わるだろう。それはエンドユーザーのために混乱を引き起こしているので、一人で感じることはありません。 ;-)

この説明は役に立ちます。

+1

QtのOpenGL版は、Windowsにはあまり適していないOpenGLドライバを使用しています。 Qtの非OpenGLバージョンは、OpenGL - > DirectXエミュレータライブラリを使用するため、間接的にDirectXに依存しています。そうですか? –

+0

はいラマン、それは正しいです。 – lpapp

2

DirectXはANGLEベースのライブラリでサポートされています。

+0

は、私はそれを理解するが、ムーの質問は、このリンク上でということです:VS 2012(http://qt-project.org/downloads、Windowsの64ビット用のQt 5.1.0との違いは何ですか、 525 MB)とWindows 64ビット版Qt 5.1.0(VS 2012、OpenGL、522 MB) –

1

これは変更されていることに注意してください.Qt 5.5では、Qt Webサイトからダウンロードできる事前ビルドバイナリは-opengl dynamicオプションで設定されています。これは、上記の@lpappが話していたものです。 Qtのデフォルトでは、実行時にネイティブのOpenGLドライバまたはANGLEのいずれかを選択します。

Qtは、特に指定しない限り、内部的にOpenGLを使用してレンダリングします。 QtのQOpenGLxxx関数とクラスを使用してカスタムOpenGLコンテンツをレンダリングすることもできます。

For a simple introduction to Qt and OpenGL that covers this and more click here.

関連する問題