8 votos

Advertencias de OpenGL con Ubuntu 12.04 LTS funcionando como invitado de VirtualBox bajo Windows7

Llevo usando 12.04 como invitado en mi portátil desde hace bastante tiempo y funciona perfectamente.

Hoy un colega me preguntó sobre el rendimiento en 3D del invitado. Nunca se me ocurrió usar cosas en 3D en el invitado, pero de todos modos estaba interesado en los resultados, así que habilité la aceleración 3D en el menú de VirtualBox para mi instalación y reinicié la máquina virtual.

Al ejecutar glxgears aparecen advertencias extrañas, además la ventana con los engranajes giratorios se queda en negro (adjunté la salida de consola abajo).

Ejecutar glxgears sin tener habilitada la aceleración 3D funciona, obtengo ~570 FPS y ninguna advertencia.

Las bajísimas FPS no son mi problema aquí, pero la ventana negra de glxgears es extraña. ¿Mi suposición es que hay algún problema con el controlador nVidia del sistema anfitrión? (mirando el sufijo NV de las advertencias)

ortang@vbox-12-04:~$ glxgears 
Advertencia de OpenGL: glFlushVertexArrayRangeNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glVertexArrayRangeNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glCombinerInputNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glCombinerOutputNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glCombinerParameterfNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glCombinerParameterfvNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glCombinerParameteriNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glCombinerParameterivNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glFinalCombinerInputNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGetCombinerInputParameterfvNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGetCombinerInputParameterivNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGetCombinerOutputParameterfvNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGetCombinerOutputParameterivNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGetFinalCombinerInputParameterfvNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGetFinalCombinerInputParameterivNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glDeleteFencesNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glFinishFenceNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGenFencesNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGetFenceivNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glIsFenceNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glSetFenceNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glTestFenceNV no encontrado en la tabla de mesa
369 fotogramas en 5.0 segundos = 73.647 FPS

El anfitrión es un ordenador portátil Dell con Windows 7 (64 bits) (Precision E4600) con un CPU i7-2820QM y una tarjeta gráfica nVidia Quadro 2000M (versión del controlador 311.10).

El invitado es una instalación actualizada de 12.04 LTS, con las herramientas de invitado instaladas.

Alguna información adicional, ejecutando la herramienta de test de soporte de unity:

ortang@vbox-12-04:~$ /usr/lib/nux/unity_support_test -p
Advertencia de OpenGL: glFlushVertexArrayRangeNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glVertexArrayRangeNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glCombinerInputNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glCombinerOutputNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glCombinerParameterfNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glCombinerParameterfvNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glCombinerParameteriNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glCombinerParameterivNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glFinalCombinerInputNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGetCombinerInputParameterfvNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGetCombinerInputParameterivNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGetCombinerOutputParameterfvNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGetCombinerOutputParameterivNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGetFinalCombinerInputParameterfvNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGetFinalCombinerInputParameterivNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glDeleteFencesNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glFinishFenceNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGenFencesNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glGetFenceivNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glIsFenceNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glSetFenceNV no encontrado en la tabla de mesa
Advertencia de OpenGL: glTestFenceNV no encontrado en la tabla de mesa
Cadena de proveedor de OpenGL:   Humper
Cadena de renderizador de OpenGL: Chromium
Cadena de versión de OpenGL:  2.1 Chromium 1.9

No renderizado por software:    sí
No en lista negra:          sí
Configuración fbconfig GLX:             sí
Textura GLX desde mapa de bits:  sí
Textura GL npot o texturas rectangulares: sí
Programa de vértices GL:        sí
Programa de fragmentos GL:      sí
Objeto de búfer de vértices GL:  sí
Objeto de trama GL:    sí
La versión GL es 1.4+:       sí

Unity 3D compatible:       sí

La interfaz gráfica funciona suavemente, sin embargo no he activado nada extravagante (todo por defecto).

He encontrado algunos enlaces donde informan que la aceleración 3D funciona bien en un invitado 12.04, incluso ejecutan juegos allí sin pérdida importante de rendimiento.

Encontré una publicación similar en stackoverflow pero se cerró por estar fuera de tema:

https://stackoverflow.com/questions/16287511/opengl-warnings-after-enabling-3d-acceleration-in-virtual-box-running-ubuntu-12

¡Cualquier pista para resolver ese problema sería agradable!

1voto

Paul Stelian Puntos 76

Los controladores de video en el paquete Guest Additions son simplemente un intermediario entre el sistema operativo invitado y los controladores de video del host (con algunas limitaciones, como 16 (modificable) MB de VRAM). Esto significa que los mismos errores podrían aparecer incluso si el SO se ejecutara con controladores NVidia actualizados (puedes usar los controladores propietarios - para instalarlos solo ejecuta el archivo .run desde un shell) o, tal vez, solo SIN los controladores actualizados.

Es posible que Windows 7 no incluya (Al menos creo que no lo hace) los verdaderos controladores de NVidia, sino los compatibles pero menos potentes (como los que se encuentran originalmente en Ubuntu). Si es así, ¡tienes que actualizar los controladores del HOST desde AQUÍ!

0voto

Brask Puntos 1003

¿Has instalado las herramientas de Virtualbox Guest Additions en la máquina virtual? Una vez que la máquina esté en funcionamiento, ve a la pestaña de menú que dice dispositivos, baja hasta la última opción en el menú y presiona la opción Insertar CD con Guest Additions, verás un CD arrancando dentro del sistema operativo, instala los controladores y obtendrás un mejor rendimiento, espero que te ayude.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X