Unity事例ノート

UNITY

キャラクターをジャンプさせるしくみ

スペースキー押すせば、キャラクターがジャンプする仕組みをつくっていきましょう。

このページは、【Unity C#】前進と停止のアニメーション の続きをご紹介しています。

関連記事:
【Unity C#】着地していればジャンプ可能
【Unity C#】クリックした方向へジャンプする
【Unity C#】ジャンプした距離を表示する

RigidBodyを使ったジャンプ

ジャンプさせたいオブジェクトに、RigidBodyコンポーネントを追加しましょう。

is Kinematicのチェックを外します。

コライダーが無い場合は、新たにコライダーを追加しましょう。

ここでは、ボックスコライダーを作成しました。

コライダーの編集から、コライダーのサイズを調整しましょう。

地面に対して、ぴったりくっつくように、コライダーの大きさ、高さを触ります。

続いて、地面になるオブジェクトにTagをつけます。

地面のオブジェクトを選び、インスペクター > タグ > タグを追加 > 「+」マーク

Groundという名前で、タグをつくりました。

けっこう忘れがちなのですが、タグを選ぶところまで、やりましょう。

着地判定のスクリプト

続いて、ジャンプさせるスクリプトを書いていきましょう。

ジャンプにかかわる箇所に、コメントを入れています。

プレイして、スペースキーを押してみましょう。

ポイントは、地面に接しているかどうかの判定です。

これが無ければ、スペースキーを連打すると、どんどん上に上がってしまうんですね。

着地しているときのみ、ジャンプが効くようにしています。

次回はジャンプのアニメーションについてご紹介します。

【Unity C#】ジャンプのアニメーション

関連記事:
【Unity C#】着地していればジャンプ可能
【Unity C#】クリックした方向へジャンプする
【Unity C#】ジャンプした距離を表示する