Принудительное программное обеспечение на основе рендеринга OpenGL

18540
Bobby

Как я могу заставить приложение использовать программный рендеринг opengl в Ubuntu?

10
О каком (виде) приложения мы говорим? Bobby 13 лет назад 0

2 ответа на вопрос

19
ephemient

Если вы используете Mesa libGL, вы можете включить рендеринг программного обеспечения, запустив:

sudo apt-get установить libgl1-mesa-swx11 

Это удалит libgl1-mesa-glxаппаратно ускоренные библиотеки Mesa и установит программный рендер.

Кроме того, вы можете установить LIBGL_ALWAYS_SOFTWARE=1, что будет влиять только на программы, запущенные с этой переменной среды, а не на всю систему.

Оба эти изменения могут не работать, если вы используете двоичные драйверы NVidia, которые поставляют свои собственные libGL.

Привет, где я могу установить эту переменную LIBGL_ALWAYS_SOFTWARE = ​​1? У меня есть обратная проблема, OpenGL всегда отображается программно, а мой ноутбук не поддерживает Unity3D для Ubuntu 15.04. У меня есть гибридная графика Intel-Nvidia. Santi 8 лет назад 1
libgl1-mesa-swx11 больше не заменяет libgl1-mesa-glx. Таким образом, при установке вам необходимо настроить переопределение, чтобы использовать его. Тем не менее, я рекомендую использовать программное обеспечение LLVM-Pipe для рендеринга с использованием "LIBGL_ALWAYS_SOFTWARE = ​​1". Это намного быстрее и использует преимущества более нового оборудования. Кроме того, пользователи драйверов nvidia и amd могут принудительно использовать программный конвейер mesa, если он установлен, с помощью хака ld.so для переопределения загруженной библиотеки libGL. Robert Wm Ruedisueli 8 лет назад 1
Это работает на проприетарных драйверах AMD? Есть ли на Nvidia простой вариант? Daniel M Gessel 8 лет назад 2
Интересно, почему `LIBGL_ALWAYS_SOFTWARE = ​​1` не удалось настроить для работы с установленными драйверами NVIDIA +` libgl1-mesa-glx`, поскольку моя программа по-прежнему связана с `/ usr / lib / x86_64-linux-gnu / libGL.so` (предоставляется `libgl1-mesa-dev`), а не` / usr / lib / nvidia-361 / libGL.so`, который, по-видимому, загружен Mesa `dlopen`. Ubuntu 16.04. Ciro Santilli 新疆改造中心 六四事件 法轮功 7 лет назад 0
1
Malte Clasen

Если речь идет о вашем собственном приложении, вы можете ссылаться на реализацию программного обеспечения OpenGL Mesa3D .

Похожие вопросы