2014-10-02 57 views
0

發表評論發佈到one of my questions,我正在嘗試開始使用DirectInput。如何從Windows 8.1上的Visual Studio 2013 C#解決方案開始使用DirectInput?

我完全不熟悉它,而且我不知道如何開始。命名空間似乎是Microsoft.DirectX.DirectInput,但我似乎無法在我的引用中的任何地方找到它。 它說在幾個地方,你只需要從我的項目中的引用添加它,但我無法找到它。 我檢查了一個DirectX SDK,但它似乎是Windows SDK的一部分,並且Windows SDK已經安裝了Windows 8,所以我不應該做任何事情?

我發現了一些替代品,其中SharpDX聽起來很不錯。我還沒有能夠從這開始......我已經安裝了SharpDx.Input nuGet軟件包,但似乎無法使用我在其他地方可以找到的代碼,如here。例如 new DirectInput()根本不被Visual Studio識別。

+0

微軟不推薦直接輸入 – Astro 2014-10-02 16:33:15

+0

@Astro:包括SharpDX的實現嗎? – 2014-10-02 16:34:05

+0

我其實並沒有與SharpDX合作過。如果sharDx使用DirectX實現,我想是的.. [see](http://msdn.microsoft.com/en-us/library/windows/desktop/ee416842(v = vs.85).aspx) 他們說:「不推薦使用DirectInput進行鍵盤和鼠標輸入,而應該使用Windows消息。」 – Astro 2014-10-02 16:36:30

回答

0

「Microsoft.DirectX.DirectInput」程序集是Managed DirectX 1.1,不推薦使用。此外,VS 2013默認使用舊版Managed DirectX 1.1不支持的.NET 4.x。請參閱DirectX and .NET

無論C#或C++使用的底層DirectInput組件是否爲遺留組件,都不推薦用於鼠標或鍵盤。對於Xbox One和Xbox 360通用控制器,我們推薦使用XINPUT。要使用傳統的HID設備(遊戲杆,PS3控制器,一些觸覺控制器等),您仍然使用DirectInput。對於Windows 8.x上的XINPUT使用,請參閱此blog。要從C++使用,您應該查看DirectX Tool Kit,特別是GamePad類。

相關問題