私は自分でそれを理解しようとしていますが、オンラインのすべてのチュートリアルと私が見つけることができるすべてのものは、私の質問を実際に説明していないので、ここの誰かが私を助けてくれることを願っています.
これまでのところ、主に WPF を使用して C# のみを使用しており、キーボードでキーが押されたときにイベントを発生させたい場合は、単にKeyDown
イベントを使用します。そこで、押されたキーを で簡単に識別できますe.Key
。
XNA で私が見たものはすべて、キーボードの状態を取得するために使用されており、たとえばtrue または false を返す場合は -methodKeyboardState state = Keyboard.GetState();
を常にチェックインしています。Update()
state.IsKeyDown(Keys.Left);
そして私の質問は、それは本当に非効率的ではありませんか? たとえば、私のゲームが入力に 15 個のキーを使用している場合、キーボードの状態を取得し、それらの 15 個のキーのすべてを 1 秒間に 30 回チェックします。XNA でこのアプローチを使用することが非常に一般的である理由はありますか? 私が考えることができる唯一の説明は、Update
遅延イベントがゲームで問題を引き起こさないように、すべてが確実に実行されるように - メソッドに残っていることを確認することです。