問題タブ [gamepad]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
437 参照

objective-c - tvOS - 非 Siri リモートによるゲーム コントロール

私はObjective-Cでゲームに取り組んでいます。Siri リモートは GCMicroGamepad 経由でうまく機能し、実際の MFi コントローラーは GCGamepad 経由でうまく機能します。ただし、サードパーティの赤外線リモコンはゲーム内ではまったく機能しません (iPhone のリモート アプリや古い Apple TV の第 3 世代リモコンも機能しません)。

これらの入力を認識して区別するにはどうすればよいですか?


2 日後... サードパーティの TV リモコンまたは iPhone Remote.app を提示すると、UITapGestureRecognizer を使用して Up、Down、Left、Right、および Select イベントを正しく検出できることがわかりました。方向イベントは、実際にはこれらのタイプのリモコンにも固有のものです。Siri リモートは方向タップ イベントを生成しません。残念ながら、Siri リモート、サードパーティ、または iPhone Remote.app のいずれかで Select ボタンをタップすると、私のタップ認識エンジンから Select イベントが生成されます。2つを区別する方法が必要です。

私が見つけた唯一の違いは、Siri リモコンをタップするGCMicroGamepad のボタン A が押されることです。サードパーティのリモコンまたは iPhone Remote.app は、GCMicroGamepad にはまったく影響しません。しかし、GCMicroGamepad でタップ リリース イベントを監視し、そのイベントを使用して一致する Select ボタン イベントを除外するのは非常に洗練されていません。確かに、これは API の推奨される使用方法ではありません。それは良い長期的な解決策のようには思えません。GCMicroGamepad モードのときに Siri リモートに UI イベントの生成を停止するように指示できれば、それはすばらしいことです。

0 投票する
1 に答える
1018 参照

android - 方向パッドとジョイスティックは同じ Event-source id を持ちます。方向パッドとジョイスティックを区別したい

ジョイスティックと方向パッド入力を区別しようとしています。私は常に同じイベント ソース (16777232) を取得します。方向パッドを押すか、ジョイスティックを回すかは関係ありません。

私はipegaゲームコントローラーを使用しています

私の問題は次のとおりです。
最初:
左のジョイスティックを右に回すと:
1. dispatchGenericMotionEvent(MotionEvent motionEvent)がトリガーされます。および
a= 16777232(SOURCE_JOYSTICK)
2. に転送されますdispatchKeyEvent(KeyEvent event)

2番目:
右のジョイスティックを右に回すと:
1.ispatchGenericMotionEvent(MotionEvent motionEvent)がトリガーされます。および
a= 16777232(SOURCE_JOYSTICK)
2. に転送しますdispatchKeyEvent(KeyEvent event)

3 番目:
左/右/上/下の方向パッド ボタンを押すと:
1.ispatchGenericMotionEvent(MotionEvent motionEvent)がトリガーされます。および
a= 16777232(SOURCE_JOYSTICK)
2. に転送されますdispatchKeyEvent(KeyEvent event)

0 投票する
2 に答える
3769 参照

c# - C# | SharpDX.XInput | コントローラーのボタンが 1 回押されたままになっていないかどうかを検出する方法

最近、XBOX 360 コントローラー ドライバーを作成してみました。ボタンが押されているか押されているかを検出する必要があります。したがって、押したままにすると、ボタンを 1 回押すのと同じように、特定の関数も 1 回呼び出されます。これが私のコードです(別の投稿でこのソリューションを見つけましたが、うまくいきませんでした)

このコードを使用すると、ボタンを押したままにすることができ、クリック機能または呼び出されているものは何でもスパムします。

また、押されたときにtrueに設定され、押されていないときにfalseに設定されている「押された」ブール値を使用してみました。そして、「押された」が== falseの場合にのみ呼び出しを行います。

どちらも機能しませんでした。

その問題に対する他の解決策はありますか?

これが悪い質問である場合は申し訳ありません。質問のルールとヒントを読み、重複を検索しましたが、最初の解決策を得たもの以外は見つかりませんでした。

0 投票する
0 に答える
174 参照

javascript - Xbox One コントローラー UWP アプリ

Xbox OneコントローラーをUWPアプリケーションとやり取りさせようとしていて、ゲームパッドクラスを調べました(コメントに記載されている提案に基づいて-Windows UWPでのXbox oneのコントローラーサポート)。2 つの問題があります。

1) Gamepad.Gamepads.Count は、アプリケーションが Xbox で実行されているときに Xbox One コントローラーの電源を入れた場合でも、0 を返します。

2) A、B、X、および Y ボタンが押されたときを正確に評価し、左右のサムスティックの座標にアクセスする方法がわかりません。

上記の2点についてのガイダンスは、私にとって非常に役に立ちます。ありがとう!

編集: MainPage.xaml.cs の MainPage メソッドで Gamepad.Gamepads.First() を使用すると、System.Linq.dll で「System.InvalidOperationException」タイプの例外が発生します。

0 投票する
1 に答える
1491 参照

javascript - UWP アプリへの Xbox One コントローラーの入力

Xbox OneコントローラーをUWPアプリケーションとやり取りさせようとしていて、Gamepadクラスを調べました(コメントに記載されている提案に基づいて-Windows UWPでのXbox oneのコントローラーサポート)。2 つの問題があります。

1) アプリケーションが Xbox で実行されているときに、Xbox One コントローラーのスイッチをオンにしても、Gamepad.Gamepads.Count は 0 を返します。

2)A、B、X、Yボタンが押されたときにどのように正確に評価し、左右のサムスティックの座標にアクセスできるかわかりません。

上記の2点についてのガイダンスは、私にとって非常に役に立ちます。ありがとう!

0 投票する
2 に答える
563 参照

c# - Xbox One コントローラーのサムスティック座標 (UWP アプリ内)

UWP アプリケーションで 2 つの Xbox One サムスティックの座標にアクセスするにはどうすればよいですか? また、X、Y、A、B ボタンが押されたことをどのように検出できますか?

編集: MainPage.xaml.cs の MainPage メソッドで Gamepad.Gamepads.First() を使用すると、System.Linq.dll で「System.InvalidOperationException」タイプの例外が発生します。

0 投票する
0 に答える
132 参照

hid - 「エミュレート」HID ゲームパッド

Bluetooth データの送受信にまだ苦労しているので、今のところ Bluetooth を無視して、別の方法を試してみたいと思います。Windows または Linux がシミュレーション用のハードウェア ゲームパッドとして認識するソフトウェアを作成することは可能ですか (そのため、後でそのツールの入力を Bluetooth 入力に変更するだけで済みます)。可能であれば、それを達成するために何を知る必要がありますか? ありがとうございました!

(C/C++を使用しています)