游戏不会开始

时间:2012-02-20 01:34:36

标签: c# xna directinput

我在XNA中使用DirectInput但是由于某些奇怪的原因,当我实现以下代码时,我的游戏将无法启动:

DeviceList gameControllerList = Manager.GetDevices(DeviceClass.GameControl, EnumDevicesFlags.AttachedOnly);

这真的打破了我的游戏,评论线路工作虽然让它打破它。我完全不知道为什么。我引用了Microsoft.DirectX.DirectInput和一切。我甚至开始了一个全新的项目,只是进入了那条线,但在游戏启动时没有运气。

这是我的完整代码,我只是从Input.InitializeController()中的initialize方法调用Game1()

using System;
using Microsoft.DirectX.DirectInput;

namespace InputTesting{
    class Input{
        public void InitializeController(){
            DeviceList gameControllerList = Manager.GetDevices(DeviceClass.GameControl, EnumDevicesFlags.AttachedOnly);
        }
    }
}

有谁知道这笔交易是什么,我完全被难倒了。

谢谢!

1 个答案:

答案 0 :(得分:2)

如果您使用的是XNA 4.0,那么问题在于XNA不能正确支持DirectInput。

为了让您的设备使用您的程序,您需要回滚到XNA 3.1或使用允许4.0中的直接输入的包装器,我建议使用包装器SlimDX。