私は XNA ゲーム プログラミングを学ぼうとしており、Pluralsight (Pong ゲームのクローン) に関するJohn Sonmezのチュートリアルに従っています。パドルを動かすことができるように左右のキーが押されているかどうかを検出するコードは次のとおりです。
public override void Update(GameTime gameTime)
{
if (Keyboard.GetState().IsKeyDown(Keys.Left))
Velocity = new Vector2(0, -0.5f);
if (Keyboard.GetState().IsKeyDown(Keys.Right))
Velocity = new Vector2(0, 0.5f);
base.Update(gameTime);
}
このコードは機能しますが、Keyboard
状態がクリアされないようです。つまり、左キーまたは右キーを押すと、1 回すばやくタップしただけでも、キーを押しているかのようにパドルが動き続けます。キーを押し下げていません。また、この PC を「クリーン」にロードしたので、ほとんど Windows (違いがある場合は Windows 8) と Visual Studio と Monogame がインストールされています。そのため、競合するキーハンドラーなどはありません。
何か案は?