【Unity】キャラクターが特定の経路を移動するためのコード

複数のウェイポイントを使ってオブジェクトがパスをフォローするスクリプトです。これを使えば、キャラクターや敵が特定の経路を移動することができます。

using UnityEngine;
using System.Collections.Generic;

public class WaypointFollower : MonoBehaviour
{
    public List<Transform> waypoints;
    public float speed = 2f;
    private int currentWaypointIndex = 0;

    void Update()
    {
        if (waypoints.Count == 0) return;

        Transform targetWaypoint = waypoints[currentWaypointIndex];
        float step = speed * Time.deltaTime;
        transform.position = Vector3.MoveTowards(transform.position, targetWaypoint.position, step);

        if (Vector3.Distance(transform.position, targetWaypoint.position) < 0.1f)
        {
            currentWaypointIndex = (currentWaypointIndex + 1) % waypoints.Count;
        }
    }
}

コメント

タイトルとURLをコピーしました