0

現在、XBox コントローラーに向けたトップダウン シューターの XNA プログラミングを楽しんでいますが、現在いくつかの問題が発生しています。

左スティックでキャラクターを動かし、右スティックで照準を合わせます。つまり、基本的にどの方向に移動しても、360 度の角度で撮影できます。私が今持っているものは機能しますが、非常に敏感で「粘着性があります」。サムスティックを完全な外側の円で動かしている場合、次の角度に移動する前に、90 度すべての角度に少し余分に貼り付けるのが好きです。

だから、これは私が今持っているものです:

direction.X = gpState_new.ThumbSticks.Right.X;
direction.Y = gpState_new.ThumbSticks.Right.Y;
rotation = Math.Atan2(direction.Y, direction.X);

そして、プレーヤーを描くときは、描画する角度として回転を使用します。これをより良くするためのヒントはありますか?

フレドリック

4

1 に答える 1

1

これは、スティックの「デッドゾーン」が原因のようです。基本的な修正は、おそらく GamePadDeadZone.Circular を使用することです。おそらくあなたのコードの前に、

GamePadState gpSTate_new = GamePad.GetState(playerIndex, GamePadDeadZone.Circular);

非常によく似た質問が GameDev で尋ねられました (そして、そこでより詳細な回答を見ることができます)。将来、この種の質問でうまくいくかもしれません。

于 2013-01-10T22:00:37.850 に答える