デフォルトの XNA 入力は、フレーム処理中 (更新呼び出しの間、キーが押された直後) に何らかのメソッドを呼び出す可能性があるイベント ハンドラーを提供しません。
Nuclex.Input を使用してみましたが、いくつかの欠陥があります — F10、Alt、Pause などのキーは、割り当てられたイベントを起動しません。これらのキーの一部はGetKeyboard().GetState().GetPressedKeys()
リストに表示されますが、リストに表示されないものもあります。これは、ショートカットの作成には受け入れられません。
XNA のデフォルトの入力マネージャーをイベントで動作させる方法があれば嬉しいのですが、それが可能だと言う人を見たことがありません。だから私はおそらく、プレス/リリースイベントハンドラーで可能なキープレスを私に与えることができる他の入力マネージャーを探しています。
または、キーのプレス/リリースに対してハンドラーイベントを起動するなど、Windowsフックを使用してサードパーティライブラリの使用を回避する方法があるでしょうか?
それとも、この XNA の入力方法全体が台無しになり、上位クラスのゲーム エンジンがまったく異なるアプローチを使用するのでしょうか?
ここ数年、誰もが XInput を使用しています。