اسکریپت برای کنترل انیمیشن در Unity

اسکریپت برای کنترل انیمیشن در Unity با استفاده از Animator و تنظیم سرعت انیمیشن (Animation Speed) و فریم ریت (FPS)
در اینجا یک اسکریپت C# مناسب برای Unity بنویسم که:

نام انیمیشن را از پارامتر بگیرد

به Animator متصل می‌شود

سرعت انیمیشن را تنظیم می‌کند


اسکریپت: Anim_FPS.cs

using UnityEngine;

public class Anim_FPS : MonoBehaviour
{
    [Header("References")]
    public Animator Ani; // مرجع به Animator

    [Header("Settings")]
    public float Animation_speed = 1f; // سرعت انیمیشن
    public float Animation_fps = 0.2f; // ضریب FPS (مثلاً برای کاهش فریم‌ها)
    public string Ani_name = "running"; // نام انیمیشن (مثلاً running)

    void Start()
    {
        if (Ani == null)
        {
            Debug.LogError("Animator is not assigned!");
            return;
        }

        // اطمینان حاصل کنیم که انیمیشن وجود دارد
        if (!Ani.HasParameter(Ani_name))
        {
            Debug.LogWarning($"Animator does not have parameter named: {Ani_name}");
            return;
        }
    }

    void Update()
    {
        // تنظیم سرعت انیمیشن با توجه به Animation_fps
        float finalSpeed = Animation_speed * Animation_fps;
        Ani.SetFloat(Ani_name, finalSpeed);
    }
}