Как рассчитать время, необходимое для завершения анимации аниматора? - PullRequest
0 голосов
/ 05 июня 2019

Можно ли получить общее время, необходимое для завершения анимации аниматора? Либо в сопрограммах, либо в обновлениях?


public class AnimatorLoop : MonoBehaviour {

     private Animator anim;

    // Use this for initialization
    void Start () {
        anim = GetComponent<Animator>();
        StartCoroutine(PlayAnim());
    }

    // Update is called once per frame
    void Update () {

    }

    IEnumerator PlayAnim()
    {
        anim.Play("MoveForward", 0, 0);
        yield return null;
    }
}

1 Ответ

0 голосов
/ 05 июня 2019
IEnumerator PlayAnim()
{
    anim.Play("CubeForward", 0, 0);

    yield return new WaitForEndOfFrame();
    Debug.Log("current clip length = " + anim.GetCurrentAnimatorStateInfo(0).length);
}

Просто нужно было добавить одну строку с указанием длины, которая вычисляет расстояние и скорость, чтобы дать время.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...