我知道这很奇怪。 XNA版本为3.1,VirtualBox版本为4.0.2。
答案 0 :(得分:4)
安装reference device附带的软件DirectX SDK。对我来说,这启用了在Hyper-V虚拟机上运行XNA相关的单元测试。它应该为任何虚拟环境提供技巧,因为它在软件中实现完整的DirectX设备,并且不依赖于可用的硬件或虚拟化驱动程序。它不会非常快,但应该有效。
安装DirectX SDK的核心部分就足够了,无需进一步安装或配置。
(几乎忘了)在设置设备的代码中,您必须指定要使用的设备类型:
var deviceType = (hardwareDevice ? DeviceType.Hardware : DeviceType.Reference);
var graphicsDevice = new GraphicsDevice(GraphicsAdapter.DefaultAdapter,
deviceType,
...);
作为旁注:在XNA 4.0中,选择参考或硬件设备将使用UseReferenceDevice property移至GraphicsAdapter
。
答案 1 :(得分:1)
我在VMware Fusion中管理它,它支持DirectX 9c。但是,您可能必须使用Reach游戏配置文件而不是完整的HiDef配置文件。这可以在Visual Studio的游戏项目属性窗口中轻松完成。
我希望这会有所帮助,但正如dotalchemy所说,你会希望确保得到支持!
答案 2 :(得分:0)
根据DirectX in VirtualBox 3.0.0 - Pure joy is here启用3D加速,XNA项目运行正常。