我已经在笔记本电脑上使用 12.04 作为客户端一段时间了,它运行得很完美。
今天,一位同事问我客户机的 3D 性能。我从来没想过在客户机上使用花哨的 3D 功能,但我对结果很感兴趣,所以我3D acceleration
在安装的 VirtualBox 菜单中启用了它并重新启动了虚拟机。
运行时glxgears
会发出奇怪的警告,而且窗户上有旋转的齿轮保持黑色(我在下面发布了控制台输出)。
跑步glxgears
没有启用 3D 加速后,最终得到了 ~570 FPS 并且没有警告。
低 FPS 不是我的问题,但黑色的 glxgears 窗口很奇怪。我猜是主机系统的 nVidia 驱动程序出了问题?(查看NV
警告的后缀)
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
主机是一台 Windows 7(64 位)戴尔笔记本电脑(Precision E4600),配有i7-2820QM
CPU 和nVidia Quadro 2000M
(驱动程序版本 311.10)显卡。
该客户机是最新的 12.04 LTS 安装,并安装了客户机插件。
一些附加信息,运行 Unity 支持测试工具:
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
GUI 运行流畅,但是我没有激活任何花哨的东西(全部默认)。
我发现一些链接,他们报告说 3D 加速在 12.04 客户机上运行良好,他们甚至在那里运行游戏而没有重大的性能损失。
我在 stackoverflow 上找到了一个类似的帖子,但是由于偏离主题而被关闭了:
任何能解决该问题的提示都很好!
答案1
答案2
您是否在虚拟机上安装了 Virtualbox Guest Additions 工具?机器运行后,转到显示设备的菜单选项卡,转到菜单上的最后一个选项,然后按“插入带有 Gest Additions 的 CD”选项,您将看到 CD 在操作系统内启动,安装驱动程序,您将获得更好的性能,希望它有所帮助。