OpenGL プログラミング / OpenGL プログラムの実行で動作するようにラップトップをセットアップする際に、多くの問題 / 混乱がありました。
私のラップトップは、Intel CPU がオンチップのグラフィックス プロセッサを搭載し、専用のグラフィックス カードもある非常に巧妙な (私には巧妙すぎる) 設計の 1 つを持っています。具体的には、CPU は 3630QM で、「HD Graphics 4000」(非常にエキサイティングな名前だと思います) で、「適切な」グラフィックス プロセッサは Nvidia GTX 670MX です。
Wikipediaによると、理論的には、適切なドライバーがインストールされていれば、HD Graphics Chip (Intel) は Linux で OpenGL 3.1 をサポートします。(おそらくそうではありません。)
NVIDIAによると、670MXはOpenGL 4.1に対応しているとのことなので、理想的にはこのGPUで開発・実行したい。
NVIDIA GPU で OpenGL 4.1 コードを実行できるようにするドライバーをインストールしていますか? 回答: おそらくいいえ。現在、この「optirun」を使用して、専用 GPU で OpenGL プログラムを実行しています。このリンクを参照して、コンピューターをセットアップするために従ったプロセスを確認してください。
私の質問は、コンパイルされたプログラムを 670MX で実行する方法を知っているということです。これは「optirun ./programname」になりますが、システムにインストールされているグラフィックス ドライバーがサポートする OpenGL のバージョンを確認するにはどうすればよいですか? 'glxinfo | 実行中 ターミナルで grep -i opengl' を実行すると、Intel チップが OpenGl バージョン 3.0 をサポートしていることがわかります。以下の情報を参照してください。
ed@kubuntu1304-P151EMx:~$ glxinfo | grep -i opengl
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Mobile
OpenGL version string: 3.0 Mesa 9.1.3
OpenGL shading language version string: 1.30
OpenGL extensions:
「optirun」で利用可能なサポートと、サポートされている OpenGL のバージョンを確認するには、同じまたは類似のことを行うにはどうすればよいですか?
アップデート
glGetString() を使用してこの情報を見つけることを誰かが提案しました: 私は完全に混乱しています! optirun がなければ、サポートされている OpenGL のバージョンは「3.0 MESA 9.1.3」なので、バージョン 3 であることが予想されました。しかし、optirun でサポートされている OpenGL のバージョンは「4.3.0 NVIDIA 313.30」なので、バージョン 4.3 ?! NVIDIA のハードウェア仕様にバージョン 4.1 のみがサポートされていると記載されている場合、どうしてバージョン 4.3 になるのでしょうか?