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

8

Estou usando o 12.04 como convidado no meu laptop há algum tempo e agora funciona perfeitamente.

Hoje, um colega me perguntou sobre o desempenho em 3D do convidado. Nunca me ocorreu usar coisas 3D sofisticadas no convidado, mas eu estava interessado nos resultados de qualquer maneira, então habilitei o 3D accelerationmenu VirtualBox para minha instalação e reiniciei o vm.

Correr glxgearsemite avisos estranhos, além de a janela com as engrenagens giratórias permanecer preta (publiquei a saída do console abaixo).

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

O baixo FPS não é o meu problema aqui, mas a janela preta do glxgears é estranha. Meu palpite é que há algum problema com o driver nVidia do sistema host? (olhando o NVsufixo 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 Windows 7 (64 bits) (Precision E4600) com uma i7-2820QMCPU e uma nVidia Quadro 2000Mplaca gráfica (versão do driver 311.10).

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

Algumas informações adicionais, executando a ferramenta de teste de suporte da 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 nenhum material sofisticado (todos padrão).

Eu encontrei alguns links nos quais eles relatam que a aceleração 3D funciona bem em um convidado 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:

/programming/16287511/opengl-warnings-after-enabling-3d-acceleration-in-virtual-box-running-ubuntu-12

Qualquer dica para resolver esse problema seria legal!

ortang
fonte

Respostas:

1

Os drivers de vídeo no pacote Guest Additions são apenas um proxy entre o SO 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 for executado com os drivers NVidia atualizados (você pode usar os drivers proprietários - para instalá-los, basta executar o arquivo .run a partir 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 drivers reais da NVidia, mas no máximo os compatíveis, mas menos poderosos (como os originalmente encontrados no Ubuntu). Nesse caso, você deve atualizar os drivers HOST a partir daqui !

Paul Stelian
fonte
0

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

Brask
fonte
Sim, eu os tenho instalados. O convidado é uma instalação LTS atualizada de 12.04, com complementos convidados instalados.
ortang