ゲームの重力とジャンプを調整したい。でも、リアルとアニメ調の違いが分からない。
多くの学生が最初に感じるのが、この疑問です。
実は、重力とジャンプのパラメータを変えることで、操作感が大きく変わります。
この記事では、ゲームに使う重力・ジャンプ計算式について、リアル・アニメ調の違いを徹底解説します。
✨ この記事でわかること
- リアルな重力の設定方法
- アニメ調の重力の設定方法
- ジャンプパラメータの調整方法
- 操作感の違い

重力とジャンプのパラメータを変えることで、操作感が大きく変わります。まずは、それぞれの違いを理解しましょう。
Unity入門の森を見る 初心者歓迎!動画×プロジェクト一式で本格ゲーム制作を学べる
あなたのオリジナルゲーム、今年こそ完成させませんか?
RPG・アクション・ホラー…Unityで本格ゲームを作りたい人のための学習サイトです。
実際に完成するゲームを題材に、
ソースコード・素材・プロジェクト一式をすべて公開。
仕事や学校の合間の1〜2時間でも、
「写経→改造」で自分のゲームまで作りきれる環境です。
リアルな重力の設定方法

リアルな重力は、現実の物理法則に近い設定です。
主な設定は次の通りです。
- GravityScale = 1.0:標準の重力
- 落下速度が速い
- 操作感が重い
リアルな重力は落下が速く、ジャンプ後すぐに下降し始めます。
そのため、マリオのような“ふわっと頂点で滞空する”挙動は再現できません。
一方、アニメ調の重力は落下速度が遅く、「ジャンプ中に空中制御する時間を確保したい」ゲームに向いています。
ロックマンのように、頂点までストレートに上がり、そこから緩やかに落ちる軌道が典型例です。
このように、現実の物理ではなく「気持ちよさ」を優先した重力設定が、アクションゲームで選ばれる理由です。
アニメ調の重力の設定方法

アニメ調の重力は、操作感を重視した設定です。
主な設定は次の通りです。
- GravityScale = 0.5〜0.8:弱い重力
- 落下速度が遅い
- 操作感が軽い
アニメ調の重力は、アクションゲームでよく使われます。
操作感が軽く、プレイしやすいのが特徴です。

アニメ調の重力は、アクションゲームでよく使われます。実際に動かしながら、最適な値を見つけましょう。
アニメ調ジャンプの基本計算式
アニメ調のジャンプでは、「どれくらいの高さまで飛ばしたいか」から必要なジャンプ初速度を逆算すると、あとから調整しやすくなります。
物理的には、ジャンプの高さと重力、ジャンプ初速度には次のような関係があります。
ジャンプの最大到達高さ h と、重力 g、ジャンプ初速度 v₀ の関係式は
h = v0^2 / (2 × g)
この式を v₀ について解くと、次のように「飛ばしたい高さ h から v₀ を求める」形にできます。
v0 = √(2 × g × h)
Unityでのジャンプ初速度の計算例
Unity(2D)の場合、Physics2D.gravity と GravityScale を掛け合わせた値が実際の重力加速度になります。
ジャンプしたい高さ jumpHeight を決めておき、そこからジャンプ初速度を計算するコード例は次のとおりです。
|
1 2 3 4 5 6 |
float gravity = Mathf.Abs(Physics2D.gravity.y * gravityScale); float jumpVelocity = Mathf.Sqrt(2f * gravity * jumpHeight); rb.velocity = new Vector2(rb.velocity.x, jumpVelocity); |
このように「ジャンプさせたい高さ」から逆算して初速度を決めておくと、GravityScale を少し変えたときも調整の基準が分かりやすくなります。
ジャンプパラメータの調整方法

ジャンプパラメータは、重力との組み合わせによって操作感が大きく変わります。
「どれくらいの高さまで飛ぶか」「どれくらい滞空するか」は、アクションゲームのプレイフィールに直結するため、数値で調整していくことが重要です。
- ジャンプ力(初速度)を大きくして高さを上げる
- 重力を弱くして滞空時間を伸ばす
- 上昇・下降で重力を変えるなど、ゲーム特有の調整を入れる
ここからは、ジャンプの高さや滞空時間を計算式を使って調整する方法を紹介します。
ジャンプ高さから初速度を求める基本計算式
ジャンプを調整するときは、まず「どれくらいの高さまで飛ばしたいか」を決めると調整がスムーズです。
ジャンプの最大到達点 h、重力加速度 g、ジャンプ初速度 v0 の関係は以下の式で表せます。
h = v0^2 / (2 × g)
この式を v0(ジャンプ初速度)について解くと、以下のようになります。
v0 = √(2 × g × h)
この公式を使うことで、ジャンプ高さ・重力・初速度の関係を数値で把握でき、感覚だけに頼らず精密に調整できるようになります。
Unityでジャンプ初速度を計算して設定するコード例
Unity(2D)では、実際の重力は Physics2D.gravity.y × GravityScale で求められます。
ジャンプしたい高さ jumpHeight から初速度を計算しセットするコード例は次のとおりです。
|
1 2 3 4 5 6 7 |
float gravity = Mathf.Abs(Physics2D.gravity.y * gravityScale); float jumpVelocity = Mathf.Sqrt(2f * gravity * jumpHeight); // ジャンプ時の速度を設定 rb.velocity = new Vector2(rb.velocity.x, jumpVelocity); |
このように「飛ばしたい高さ」を基準に初速度を逆算しておくと、GravityScale を変更したときも調整がしやすくなります。
滞空感を調整するための落下時の重力設定
アクションゲームでは「上昇はふわっと、下降は素早く」というジャンプ挙動が多く採用されています。
これは下降時だけ重力を強める fallMultiplier を使うことで実現できます。
|
1 2 3 4 5 6 7 8 9 10 11 12 |
if (rb.velocity.y < 0) { // 下降時は重力を強める rb.gravityScale = fallMultiplier; } else { // 上昇中は通常の重力 rb.gravityScale = gravityScale; } |
この調整により、ジャンプ頂点付近のふわっとした感覚を残しつつ、下降を素早くしてゲーム全体のテンポを整えることができます。

アクションゲームの「気持ちよさ」を作るために非常に有効なテクニックです。
ジャンプ設定でつまづきやすいポイント

ジャンプや重力のパラメータ調整は、ゲーム制作の中でも多くの人がつまづきやすいポイントです。
ただし、失敗パターンには共通点があります。
原因と直し方を知っておけば、遠回りせずに「気持ちいいジャンプ」に近づけます。
1. ジャンプが高すぎる・低すぎる
v0 = √(2 × g × h)
この式を基準にしてから微調整することで、「なんとなく数値をいじる」状態から抜け出せます。
2. 落下が速すぎて操作しづらい
上昇中と下降中で重力を変える実装にしておくと、落下スピードだけを個別に調整しやすくなります。
3. ジャンプ頂点で挙動が不自然になる
最初は「通常の重力 ×1.2〜1.5倍」程度から試すと、不自然さが出にくくなります。
4. 空中制御が効きすぎる・効かなすぎる
「地上よりキビキビしすぎない」程度に抑えると、自然な操作感になりやすいです。
5. 1つ直すと別の挙動が崩れてしまう
順番を固定しておくことで、「どの変更がどの挙動に影響したか」が分かりやすくなり、調整の迷子になりにくくなります。
こうしたつまづきポイントと対処法を押さえておくと、試行錯誤の回数を減らしながら、狙い通りのジャンプ挙動を作りやすくなります。

Unity入門の森を見る 初心者歓迎!動画×プロジェクト一式で本格ゲーム制作を学べる
実践的な重力・ジャンプ計算を学ぶには

ここまで、ゲームに使う重力・ジャンプ計算式について解説してきました。
ただし、実際のゲーム制作では、さらに多くの要素が必要になります。
アニメーション、エフェクト、UI、サウンドなど、全体を体系的に学ぶには、専門の講座が効率的です。
Unity入門の森では、アクションゲームの作り方を、基礎から完成まで丁寧に解説しています。
コードの意味から、なぜその実装方法を選ぶのかまで、しっかり理解できる内容になっています。
アクションゲーム制作に特化した講座なら、効率的にスキルアップできます。
ゲーム制作でスキルを上げたい方は、ぜひチェックしてみてください。
あなたのオリジナルゲーム、今年こそ完成させませんか?
RPG・アクション・ホラー…Unityで本格ゲームを作りたい人のための学習サイトです。
実際に完成するゲームを題材に、
ソースコード・素材・プロジェクト一式をすべて公開。
仕事や学校の合間の1〜2時間でも、
「写経→改造」で自分のゲームまで作りきれる環境です。
まとめ

ゲームに使う重力・ジャンプ計算式について解説しました。
要点のまとめ
- リアルな重力は、GravityScale = 1.0
- アニメ調の重力は、GravityScale = 0.5〜0.8
- ジャンプパラメータは、重力と組み合わせて調整する
- 実際に動かしながら、感覚的に調整する
基本を押さえれば、あとは応用していくだけです。
まずは、ここで紹介した設定を実際に試してみてください。
動かしながら理解を深めていくのが、上達への近道です。
Unity入門の森を見る 初心者歓迎!動画×プロジェクト一式で本格ゲーム制作を学べる



コメント