Unity ゲームにダブルジャンプを追加する

このチュートリアルでは、Unity ゲームでダブルジャンプ メカニクスを実装する方法について説明します。ダブルジャンプを使用すると、プラットフォーム ゲームやアクション ゲームがよりダイナミックになり、楽しくプレイできるようになります。この機能をスムーズに統合できるように、ステップ バイ ステップ ガイドとコード例を提供します。

環境の設定

コーディングを始める前に、Unity プロジェクトで次の設定がされていることを確認してください。

  • RigidbodyCollider を備えたプレイヤー キャラクター。
  • 特定のタグを持つ地上オブジェクト (例: "Ground")。

ダブルジャンプスクリプトの作成

PlayerDoubleJump という名前の新しい C# スクリプトを作成し、プレイヤー キャラクターにアタッチします。このスクリプトは、ダブル ジャンプの検出と実行を処理します。

using UnityEngine;

public class PlayerDoubleJump : MonoBehaviour
{
    public float jumpForce = 7.0f;
    private int jumpCount = 0;
    private bool isGrounded = false;
    private Rigidbody rb;

    void Start()
    {
        rb = GetComponent();
    }

    void Update()
    {
        if (isGrounded && Input.GetButtonDown("Jump"))
        {
            Jump();
        }
        else if (!isGrounded && jumpCount < 2 && Input.GetButtonDown("Jump"))
        {
            Jump();
        }
    }

    private void OnCollisionEnter(Collision collision)
    {
        if (collision.gameObject.CompareTag("Ground"))
        {
            isGrounded = true;
            jumpCount = 0;
        }
    }

    private void OnCollisionExit(Collision collision)
    {
        if (collision.gameObject.CompareTag("Ground"))
        {
            isGrounded = false;
        }
    }

    private void Jump()
    {
        rb.velocity = new Vector3(rb.velocity.x, jumpForce, rb.velocity.z);
        jumpCount++;
    }
}

コードの説明

スクリプトの各部分の動作の詳細は次のとおりです。

  1. 変数: jumpForce はジャンプの力を制御し、jumpCount はジャンプの数を追跡し、isGrounded はプレイヤーが地面にいるかどうかを確認し、rb はプレイヤーの Rigidbody を参照します。
  2. 開始メソッド: Rigidbody 参照を初期化します。
  3. 更新方法: ジャンプ入力をチェックします。プレイヤーが地面に着いている場合は、ジャンプを許可します。プレイヤーが地面に着いておらず、ダブルジャンプもしていない場合は、2 回目のジャンプを許可します。
  4. OnCollisionEnter メソッド: プレイヤーが地面に衝突したことを検出し、ジャンプ カウントと接地状態をリセットします。
  5. OnCollisionExit メソッド: プレイヤーが地面を離れたことを検出し、接地ステータスを更新します。
  6. ジャンプ方法: 垂直方向の力を加えてジャンプを実行し、ジャンプカウントを増加させます。

ダブルジャンプの仕組みをテストする

スクリプトを実装した後、プレイヤーが地上および空中にいるときにジャンプ ボタン (通常はスペース バー) を押して、ダブル ジャンプの仕組みをテストします。プレイヤーは、再び地面に触れる前に 2 回ジャンプできる必要があります。

結論

Unity ゲームにダブル ジャンプ メカニクスを追加すると、ゲームプレイ エクスペリエンスが大幅に向上します。このチュートリアルでは、基本的なダブル ジャンプ スクリプトを作成し、さらにカスタマイズして拡張することができます。さまざまなジャンプ力、アニメーション、追加機能を試して、ダブル ジャンプ システムをより堅牢で魅力的なものにしましょう。