ソフトウェアベースのOpenGLレンダリングを強制する


11

Ubuntuでソフトウェアベースのopenglレンダリングを使用するようにアプリケーションを強制するにはどうすればよいですか?


どのようなアプリケーションのことを話しているのですか?
ボビー

回答:


20

Mesaを使用している場合は、次のコマンドをlibGL実行して、ソフトウェアレンダリングを永続的に有効にすることができます。

sudo apt-get install libgl1-mesa-swx11

これにより、libgl1-mesa-glxハードウェアアクセラレーションされたMesaライブラリが削除され、ソフトウェアのみのレンダラーがインストールされます。

または、を設定できLIBGL_ALWAYS_SOFTWARE=1ます。これは、システム全体ではなく、その環境変数で開始されたプログラムにのみ影響します。

独自のを提供するバイナリNVidiaドライバーを使用している場合、これらの変更は両方とも機能しない可能性がありますlibGL


1
こんにちは、この変数LIBGL_ALWAYS_SOFTWARE = 1はどこに設定できますか?私は逆の問題を抱えています。OpenGLは常にソフトウェアレンダリングされ、私のラップトップはubuntu 15.04のUnity3Dをサポートしていません。ハイブリッドIntel-Nvidiaグラフィックスを使用しています。
サンティ2015

1
libgl1-mesa-swx11はlibgl1-mesa-glxを置き換えなくなりました。したがって、それをインストールするときに、それを使用するようにオーバーライドを構成する必要があります。それでも、「LIBGL_ALWAYS_SOFTWARE = 1」を使用してLLVMパイプソフトウェアレンダリングを使用することをお勧めします。これは、はるかに高速で、新しいハードウェアを利用します。また、nvidiaおよびamdドライバーのユーザーは、ロードされたlibGLライブラリーをld.soハックを使用してオーバーライドすることにより、mesaがインストールされている場合、mesaソフトウェアパイプラインの使用を強制できます。
Robert Wm Ruedisueli 2015年

2
これはAMD独自のドライバーで動作しますか?Nvidiaに簡単なオプションはありますか?
Daniel M Gessel

私のプログラムはまだ(によって提供される)にリンクされており、Mesaによってロードされているように見えるので、LIBGL_ALWAYS_SOFTWARE=1NVIDIAドライバーがインストールされている+ libgl1-mesa-glxで動作しないのはなぜでしょうか。Ubuntu 16.04。/usr/lib/x86_64-linux-gnu/libGL.solibgl1-mesa-dev/usr/lib/nvidia-361/libGL.sodlopen
Ciro Santilli冠状病毒审查六四事件法轮功

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.