我尝试使用 VirtualBox 在 Windows 客户机上玩游戏,该计算机在具有 512MB 视频 RAM 的 OSX Mavericks 主机下运行。该游戏需要 512MB 视频 RAM(尽管它在图形方面没有做任何特别密集的事情)。
配置屏幕中的滑块最多只能达到 256MB。
我试过
VBoxManage modifyvm "Name of VM" --vram 512
但这不起作用:
VBoxManage: error: Invalid VRAM size: 512 MB (must be in range [1, 256] MB)
VBoxManage: error: Details: code NS_ERROR_INVALID_ARG (0x80070057), component SessionMachine, interface IMachine, callee nsISupports
VBoxManage: error: Context: "COMSETTER(VRAMSize)(ValueUnion.u32)" at line 570 of file VBoxManageModifyVM.cpp
据我所知,视频 RAM 是使用常规主机 RAM 模拟的,因此我认为没有理由进行这样的限制。有没有办法将客户机视频 RAM 增加到 256MB 以上?
答案1
这显然是 VirtualBox 内置的硬性限制。我自己还没有尝试过,但有人此主题报告通过编辑 VM 配置文件将视频 RAM 提高到 256MB 以上,但遇到了错误消息并且无法启动 VM。
同一主题还对存在此限制的原因进行了一些猜测。这似乎是一个合理的问题,因为现代 CPU 很可能能够处理需要 >256MB 视频内存的旧程序的 GPU 仿真。此外,鉴于 3D 支持将大部分工作转交给实际视频卡,因此在 VirtualBox 下运行需要 >256MB VRAM 的较新程序是完全有可能的。
该主题中的一些评论者认为,编码此更改涉及相当多的复杂性(足以吓跑那些想要自己破解更改的人),并且模拟视频卡中缺少的功能会阻止许多此类程序运行,即使有大量模拟 VRAM。
答案2
这是由于可用的系统资源,它不能超出硬件功能。
我在 MacBook Pro 上运行 Yosemite。我创建了一个新的 VB 虚拟机,最大可用视频内存为 128MB。
答案3
简单...算一下...高清:1920x1080=2073600 或 2.1Mb。VirtualBox 使用系统 RAM 直接组成 vRAM 和 vRAM。GPU 使用内存做更多的事情,而不仅仅是显示图像。特别是在游戏中,它必须更深入地处理图像...例如:OSX Sierra 使用 4Mb vRAM,因此给它 256Mb 是没用的,对吧?不要混合 GPU RAM 和系统 vRAM...我希望我已经说得足够清楚了...干杯...!!