2017-04-04 8 views
2

Xbox Oneコントローラからの入力を取得しようとしていますが、動作させることができません。私はSharpDXを試しましたが、NuGetからSharpDXをインストールした後、 "SharpDX.XInput"を追加できませんでした。私もXInputDotNetを試して、XInputDotNetPureへの参照を追加しました。プログラムを実行したときに、「不正な形式のプログラムを読み込もうとしました」というエラーメッセージが表示されてクラッシュしました。この問題を解決する方法や、Xbox Oneコントローラからの入力を得るための別の方法を知っていれば、それを分かち合うことができれば大変感謝しています。ありがとう!Visual StudioでXbox Oneコントローラを使用していますか?

+0

は何これは、Visual Studioとの関係があるのでしょうか?私が間違っている場合は私を修正してください。しかし、使用しているIDEはこれとは関係がありません。それは.NETコードに関するものです。 – mason

答えて

1

Sharpdx.XInputインターフェイスを使用しました。 XBOXコントローラを動作させるために他のインターフェイスをインストールする必要はありません。勝利8.1がある場合、3.0パッケージにインストールする際に問題があります。新しいベータ版V4.0がリリースされました。ベータ版を有効にすると、これをNuget経由で入手できるはずです。

コントローラオブジェクトの宣言

例:

Xboxのコントローラがに接続されている場合は、テストすることができ、あなたの作成で
private Controller m_playerControl; 

m_playerControl = new Controller(UserIndex.One); 

または2など3を使用し、4

:つかむために

m_playerControl.IsConnected 

状態。などあなたも同じ状態オブジェクトを使用して、あなたのゲームパッドをオーバーレイ

m_state = m_playerControl.GetState(); 
     m_lx = m_state.Gamepad.LeftThumbX; 
     m_ly = m_state.Gamepad.LeftThumbY; 
     m_lt = m_state.Gamepad.LeftTrigger; 
     m_lb = m_state.Gamepad.Buttons; 

     m_rx = m_state.Gamepad.RightThumbX; 
     m_ry = m_state.Gamepad.RightThumbY; 
     m_rt = m_state.Gamepad.RightTrigger; 

アドバイス

関連する問題