2016-04-08 17 views
1

実行中のglewinfoには多くの情報がありますが、その中には参考になるものよりも混乱するものがあります。glewinfoの出力をどのように解釈すればよいですか?

は、ここで私はそれは私のOpenGLのバージョンが2.1である私に語ったが、私が読み続けたときに、そこGL_VERSION_4_0までGL_VERSION_3_0へのエントリーがあり、それらのすべてがOKを言うhttp://pastebin.com/K5p37w8a

を持っているラップトップから私のglewinfoです。しかし、私はそこにリストされている機能のいずれかを呼び出すことはできません。

その他のタグはOK [MISSING]でタグ付けされています。これは存在するか存在しないため、同時に両方を同時に行うことはできません。

答えて

1

glewinfoプログラムには、存在するすべてのエントリポイント(機能)が表示されます。機能を使用できるかどうか、またはエントリポイントが機能するかどうかはわかりません。関数はOKとして報告できますが、呼び出すとプログラムがクラッシュする可能性があります。利用可能な機能を理解するためには、拡張文字列とバージョン番号を調べる必要があります。 glxinfoからこの情報を得ることができます.GLEWは必要ありません。

この場合、Mesa(OpenGL実装)と互換性プロファイル(デフォルトプロファイル)を使用しています。互換モードでは、MesaはOpenGL 2.1に制限されています。しかし、コアプロファイルを要求すると、Mesaは新しい機能を提供し、OpenGLの新しいバージョンをサポートします。同じMesaライブラリがまだ使用されています。そのため、OpenGL 4.0のエントリポイントはすべて利用可能です。

ただし、コアプロファイルで使用すると、GLEWが多少壊れてしまいます。 glewExperimental「修正」は、欠陥のある実装上の不十分なバンドエイドです。このため、GLEWはお勧めしません。 glLoadGenは良い代替手段です。

+0

ちょっとテストプログラムを書いただけで、OpenGL 3のコンテキストを作成できません。 glxinfoには、「Max core profile version:0.0」と「Max compat profile version:2.1」という情報もあります。だから私はまだこの 'GL_VERSION_3_0'エントリが何かを呼び出すことができないとき、それが何を意味するのか分からない。 – Arne

+0

私が説明したように、 'GL_VERSION_3_0'は関数が存在するかどうかを伝えます*関数が機能するかどうかをあなたに知らせません。基本的に 'glewinfo'を無視することができます。なぜなら、あなたが知りたいことを教えてくれないので、代わりに' glxinfo'を使います。私は、あなたのハードウェアはOpenGL 2.xクラスのハードウェアだと思います。 –

関連する問題