Forzar el renderizado opengl basado en software


11

¿Cómo puedo forzar a una aplicación a usar el renderizado opengl basado en software en Ubuntu?


¿De qué (tipo de) aplicación estamos hablando?
Bobby

Respuestas:


20

Si está utilizando Mesa libGL, puede habilitar el procesamiento de software de forma permanente ejecutando:

sudo apt-get install libgl1-mesa-swx11

Esto eliminará las libgl1-mesa-glxbibliotecas de Mesa aceleradas por hardware e instalará el renderizador solo de software.

Alternativamente, puede configurarlo LIBGL_ALWAYS_SOFTWARE=1, lo que solo afectará a los programas iniciados con esa variable de entorno, no a todo el sistema.

Es posible que estos dos cambios no funcionen si está utilizando los controladores binarios de NVidia, que suministran los suyos libGL.


1
Hola, ¿dónde puedo configurar esta variable LIBGL_ALWAYS_SOFTWARE = ​​1? Tengo el problema inverso, OpenGL siempre se procesa mediante software y mi computadora portátil no es compatible con Unity3D para ubuntu 15.04. Tengo gráficos híbridos Intel-Nvidia.
Santi

1
libgl1-mesa-swx11 ya no reemplaza a libgl1-mesa-glx. Por lo tanto, al instalarlo, debe configurar una anulación para usarlo. Aún así, recomiendo usar el renderizado del software LLVM-Pipe usando "LIBGL_ALWAYS_SOFTWARE = ​​1" Es mucho más rápido y aprovecha el hardware más nuevo. Además, los usuarios de controladores nvidia y amd pueden forzar el uso de la tubería de software de mesa, si mesa está instalada, mediante el uso de un hack ld.so para anular la biblioteca libGL que está cargada.
Robert Wm Ruedisueli

2
¿Funciona esto en controladores propietarios de AMD? ¿Hay una opción fácil en Nvidia?
Daniel M Gessel

Me pregunto por qué LIBGL_ALWAYS_SOFTWARE=1no podría hacerse funcionar con los controladores NVIDIA instalados + libgl1-mesa-glx, ya que mi programa todavía está vinculado /usr/lib/x86_64-linux-gnu/libGL.so(proporcionado por libgl1-mesa-dev) y no /usr/lib/nvidia-361/libGL.so, que parece estar cargado con dlopenMesa. Ubuntu 16.04.
Ciro Santilli 冠状 病毒 审查 六四 事件 法轮功

1

Si se trata de su propia aplicación, puede vincular al software de implementación de OpenGL Mesa3D .

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.