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.
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 .
Respuestas:
Si está utilizando Mesa
libGL
, puede habilitar el procesamiento de software de forma permanente ejecutando:Esto eliminará las
libgl1-mesa-glx
bibliotecas 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
.fuente
LIBGL_ALWAYS_SOFTWARE=1
no 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 porlibgl1-mesa-dev
) y no/usr/lib/nvidia-361/libGL.so
, que parece estar cargado condlopen
Mesa. Ubuntu 16.04.Si se trata de su propia aplicación, puede vincular al software de implementación de OpenGL Mesa3D .
fuente