Avisos do OpenGL com o Ubuntu 12.04 LTS sendo executado como um VirtualBox Guest no Windows7

8

Eu tenho usado o 12.04 como convidado no meu laptop há algum tempo e ele funciona perfeitamente.

Hoje, um colega me perguntou sobre o desempenho 3D do convidado. Nunca pensei em usar o 3D em fantasia, mas eu estava interessado nos resultados de qualquer maneira, então eu ativei o 3D acceleration no menu do VirtualBox para minha instalação e reiniciei o VM.

A execução de glxgears fornece avisos estranhos, além da janela com as engrenagens giratórias permanece preta (postei a saída do console abaixo).

Executando glxgears sem a aceleração 3D ativada funciona, acabo com ~ 570 FPS e sem avisos.

O baixo FPS não é meu problema aqui, mas a janela glxgears preta é estranha. Meu palpite é que há algum problema com o driver nVidia do sistema host? (olhando o sufixo NV dos avisos)

ortang@vbox-12-04:~$ glxgears 
OpenGL Warning: glFlushVertexArrayRangeNV not found in mesa table
OpenGL Warning: glVertexArrayRangeNV not found in mesa table
OpenGL Warning: glCombinerInputNV not found in mesa table
OpenGL Warning: glCombinerOutputNV not found in mesa table
OpenGL Warning: glCombinerParameterfNV not found in mesa table
OpenGL Warning: glCombinerParameterfvNV not found in mesa table
OpenGL Warning: glCombinerParameteriNV not found in mesa table
OpenGL Warning: glCombinerParameterivNV not found in mesa table
OpenGL Warning: glFinalCombinerInputNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterivNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glDeleteFencesNV not found in mesa table
OpenGL Warning: glFinishFenceNV not found in mesa table
OpenGL Warning: glGenFencesNV not found in mesa table
OpenGL Warning: glGetFenceivNV not found in mesa table
OpenGL Warning: glIsFenceNV not found in mesa table
OpenGL Warning: glSetFenceNV not found in mesa table
OpenGL Warning: glTestFenceNV not found in mesa table
369 frames in 5.0 seconds = 73.647 FPS

O host é um laptop Dell com Windows 7 (64 bits) (Precision E4600) com uma CPU i7-2820QM e uma placa gráfica nVidia Quadro 2000M (versão do driver 311.10).

O convidado é uma instalação 12.04 LTS atualizada, com complementos de convidados instalados.

Algumas informações adicionais, executando a ferramenta de teste de suporte à unidade:

ortang@vbox-12-04:~$ /usr/lib/nux/unity_support_test -p
OpenGL Warning: glFlushVertexArrayRangeNV not found in mesa table
OpenGL Warning: glVertexArrayRangeNV not found in mesa table
OpenGL Warning: glCombinerInputNV not found in mesa table
OpenGL Warning: glCombinerOutputNV not found in mesa table
OpenGL Warning: glCombinerParameterfNV not found in mesa table
OpenGL Warning: glCombinerParameterfvNV not found in mesa table
OpenGL Warning: glCombinerParameteriNV not found in mesa table
OpenGL Warning: glCombinerParameterivNV not found in mesa table
OpenGL Warning: glFinalCombinerInputNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterfvNV not found in mesa table
OpenGL Warning: glGetCombinerOutputParameterivNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterfvNV not found in mesa table
OpenGL Warning: glGetFinalCombinerInputParameterivNV not found in mesa table
OpenGL Warning: glDeleteFencesNV not found in mesa table
OpenGL Warning: glFinishFenceNV not found in mesa table
OpenGL Warning: glGenFencesNV not found in mesa table
OpenGL Warning: glGetFenceivNV not found in mesa table
OpenGL Warning: glIsFenceNV not found in mesa table
OpenGL Warning: glSetFenceNV not found in mesa table
OpenGL Warning: glTestFenceNV not found in mesa table
OpenGL vendor string:   Humper
OpenGL renderer string: Chromium
OpenGL version string:  2.1 Chromium 1.9

Not software rendered:    yes
Not blacklisted:          yes
GLX fbconfig:             yes
GLX texture from pixmap:  yes
GL npot or rect textures: yes
GL vertex program:        yes
GL fragment program:      yes
GL vertex buffer object:  yes
GL framebuffer object:    yes
GL version is 1.4+:       yes

Unity 3D supported:       yes

A GUI funciona sem problemas, no entanto, eu não ativei nenhuma fantasia (tudo padrão).

Eu encontrei alguns links onde eles relatam que a aceleração 3D funciona bem em um convidado de 12.04, eles até rodam jogos lá sem grandes perdas de desempenho.

Eu encontrei um post semelhante no stackoverflow, mas que foi fechado como off topic:

link

Quaisquer sugestões para resolver esse problema seria bom!

    
por ortang 21.06.2013 / 17:47

2 respostas

1

Os drivers de vídeo no pacote Guest Additions são apenas um proxy entre o sistema operacional convidado e os drivers de vídeo do host (com algumas limitações, como 16 (modificáveis) MB de VRAM). Isso significa que os mesmos erros podem aparecer mesmo se o sistema operacional rodar com drivers NVidia atualizados (você pode usar os drivers proprietários - para instalá-los basta executar o arquivo .run de um shell) ou, talvez, apenas SEM os drivers atualizados.

É possível que o Windows 7 não inclua (pelo menos eu acho que não) os verdadeiros drivers da NVidia, mas na maioria dos compatíveis, mas menos poderosos (como os originalmente encontrados no Ubuntu). Em caso afirmativo, você deve atualizar os drivers HOST de AQUI !

    
por Paul Stelian 03.02.2014 / 03:36
0

Você instalou as ferramentas do Virtualbox Guest Additions na máquina virtual? Quando a máquina estiver em execução, vá para a guia de menu que diz dispositivos, vá até a última opção no menu e pressione a opção Inserir CD com Adições Gesto, você verá um CD inicializando dentro do sistema operacional, instale os drivers e você obterá melhor desempenho, espero que ajude.

    
por Brask 08.01.2014 / 14:21