OpenGLを学びたいのですが、インターネット上のほとんどのチュートリアルはOpenGL 3.0以降のガイドのみを提供します。だから私のOpenGLバージョンを見つけました。
glxinfo | grep OpenGL
次を生成します。
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Ironlake Mobile
OpenGL version string: 2.1 Mesa 10.0.4
OpenGL shading language version string: 1.20
だから私は次のドライバの公式ウェブサイトを訪問しました。 https://01.org/linuxgraphics/
最新バージョンをインストールしましたが、まだ同じ内容が表示されます。私のハードウェアがいくつかのDirectX11レンダリングをサポートしていることを知っていますが、OpenGL3.0をサポートしていないのはなぜですか?
あ、忘れてしまいましたね。私はFedora 20 64ビットを使用しています。
ベストアンサー1
その理由は、Ironlakeグラフィックアーキテクチャがivybridgeやsandybridgeではなく、Clarkdale / Arrendale世代の技術であるためです。厳密に言えば、ハードウェアは拡張機能をサポートしますが、その機能はそのグラフィックドライバでは実装されません。
ドライバのプログラミング経験がある場合は、自分で追加してみてください。
http://www.phoronix.com/scan.php?page=news_item&px=MTMxMDQ
リンクが機能しない場合関連セクション:
「Sandy Bridge以前のIntelハードウェア世代のIronlake(Clarkdale / Arrandale)はOpenGL 2.1時代に設計されていますが、このハードウェアには多くのOpenGL 3.0 / GL Shading Language 1.30機能を実装できます。利用可能なES 3.0(組み込み/モバイルGLのバリエーション)が迅速に議論され、ドライバ開発者は以前のハードウェアへの関心を素早く失いました。
Phoronixの読者は、このバグレポートとKenneth Graunkeの1月のコメントを指摘しました。
Team Fortress 2には、現在Sandy Bridgeおよび最新のハードウェアでのみサポートされているOpenGL 3.0およびGLSL 1.30の特定の機能が必要です。残念ながら、Ironlake以前のバージョンにはまだこの機能はありません。
Ironlakeで欠落している機能を実装することが可能でなければなりません。コードはオープンソースで、ハードウェア文書はWeb(*)で無料で利用できるため、理論的には誰でも作業を進めることができます。
残念ながら、私たちのチームは最新のハードウェアを開発するのに忙しいので、IronlakeのGL 3.0サポートを実装する時間がないようです...少なくとも短期的ではありません。本当に残念です。そんなことが起きてほしい。
(*) https://01.org/linuxgraphics/documentation/driver-documentation-prms
デフォルトでは、Intel Linuxドライバ開発者は最新のハードウェアやその他の機能を開発するのに忙しいので、以前のIntel製品にはなかった機能がない可能性があります。ただし、IntelはNDAなしのプログラミング文書を提供しているため、他の有能な開発者が上記の機能を提供できる必要があります。このバグのコメントは、IronlakeがLinuxのValveソースエンジンゲームで動作しないことに対する答えです。
私はIronlakeハードウェアの一部を所有していますが、Intelが最新のハードウェアサポートに取り組んでいるのを見たいと思います。 Intel i965 DRIドライバがソースエンジンゲームに必要なGL3 / GLSL1.30機能を実装していても、まだかなり遅いです。 Intelグラフィックスが統合グラフィックス性能の面で実際に大きな進歩を遂げたのは、Sandy Bridgeになっていた。 Ironlakeはそれほど有能ではなく、新しい(まだリリースされていない)ハードウェアはより興味深く、新しいドアを開くでしょう。明らかに、Intelはハードウェアもアップグレードしたいと考えています。 」
したがって、簡単な答えは次のようになります。 Intelは、これらの機能を実装するのにあまり気にしないか、インセンティブを持っていません。しかし、少なくともこれらの機能を実装したいという意志や技術/資金があれば、実装/することができます。 OGL 3.x 機能が必要な場合、Ironlake アーキテクチャはこれらの機能をサポートしておらず、おそらくサポートしないので、ハードウェアをアップグレードすることをお勧めします。