Inputが正常に検知できない時の原因

Input.GetKeyDown()やInput.GetAxis()、Input.GetMouseButton()などでキーの入力やマウスの入力を検知する時に、うまくいかない場合の原因。

ほとんどの場合はInputをUpdate()内じゃなくFixedUpdate()内に書いてしまっていることが原因だと思われます。

FixedUpdate()は毎フレームではなく一定時間ごとに呼び出される関数なので、そこにInputを書いてしまうとタイミングによっては呼び出されなかったり逆に2回呼び出されたりします。
なのでInputは必ずUpdate()内に書きましょう。

分かっていたつもりではあるのですが、最近ついやってしまったことがあったので記事にしました(笑)

Commentsこの記事についたコメント

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です