![在 VirtualBox 中启用显卡](https://linux22.com/image/854624/%E5%9C%A8%20VirtualBox%20%E4%B8%AD%E5%90%AF%E7%94%A8%E6%98%BE%E5%8D%A1.png)
我最近购买了一台新笔记本电脑,配置如下
- 处理器:Intel i5 2450
- 内存:8 GB DDR3
- 显卡:NVIDIA GeForce GTX 520 1GB
我使用 VirtualBox 设置了虚拟机,以 Windows 7 作为客户机。我想在其中使用我的(主机的)显卡,但虚拟机仅显示 128 MB 的视频内存。
我正在使用 Bumblebee 并使用启动虚拟机
$ optirun VBoxManage startvm "Windows 7"
请建议我如何在虚拟机中使用显卡进行 3D 加速。
答案1
和虚拟机中的几乎所有东西一样,显卡也是虚拟的。您仍然可以访问硬件图形加速,但仅限于有限的程度(其中一个限制是最大 128 MB RAM。)
要使用这些可用的 3D 功能,请选择3D 加速在里面展示虚拟机的设置。此外,您还需要新增嘉宾为虚拟图形适配器提供驱动程序。
为了实验将 PCI 卡传递到 Virtual Box 的功能(可能仅适用于少数显卡)请参阅:
答案2
检查你的 Ubuntu 12.10 或 13.04 客户机是否正在使用 3D 加速
/usr/lib/nux/unity_support_test -p
你应该看到类似这样的内容
Not software rendered: no
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: no
如果您看到“非软件渲染”和“Unity 3D 支持”,则表示不支持。这意味着 Unity 正在使用速度较慢的 LLVMpipe。
要启用 3D 支持,首先你需要更新 linux-headers
uname -r
sudo apt-get install linux-headers-$(uname -r)
sudo apt-get autoremove
sudo apt-get install build-essential
现在从设备插入 vitualbox guest iso 并手动安装
cd /media
ls
cd username
ls
cd VBOX*
ls
sudo ./VBoxLinuxAdditions.run
将 vboxvideo 插入到 /etc/modules
sudo nano /etc/modules
在文件末尾添加“vboxvideo”
loop
lp
vboxvideo
重启机器
sudo reboot
重启后检查“非软件渲染”和“支持 Unity 3D”是否启用
/usr/lib/nux/unity_support_test -p
接下来要做的是增加视频内存。查找 .vbox 文件
nano /home/username/VirtualBox VMs/ubuntu/ubuntu.vbox
代替
<Display VRAMSize=”128″ monitorCount=”1″ accelerate3D=”true” accelerate2DVideo=”false”/>
到
<Display VRAMSize=”256″ monitorCount=”1″ accelerate3D=”true” accelerate2DVideo=”false”/>
从http://namhuy.net/951/how-to-fix-slow-performance-ubuntu-13-04-running-in-virtualbox.html
答案3
在 Ubuntu-64b 下,我在 Vista 32b 中分配了 3G-RAM、256MB 用于视频、处理器 2D/3D 加速器启用(还有 IO APIC 以使用最多 3 核处理器)。还有一件事... 安装 DirectX 一切正常... 并且声音质量比我在旧笔记本电脑下运行 Wine 时获得的声音质量好得多。