在 Animator 控制器中,我添加了一個帶有影片的新狀態,其想法是在空閑到新狀態影片之間進行平滑過渡。
第一個轉換是在條件下使用引數 Throw 我未選中 Has Exit Time 并且在我按下 G 鍵時在代碼中它在影片之間的變化足夠平滑。

第二個轉換是從 Throwing back 到 Grounded(idle) 也未選中退出時間,這次是在我使用引數 Throw Back 的條件下。
這一次,當我按下 K 鍵時,它并沒有平滑地變回怠速,而是像“跳”到怠速一樣立即改變它。

代碼 :
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ThrowObject : MonoBehaviour
{
public Animator animator;
private void Start()
{
}
void Update()
{
if (Input.GetKeyDown(KeyCode.G))
{
animator.SetTrigger("Throw");
}
if (Input.GetKeyDown(KeyCode.K))
{
animator.SetTrigger("Throw Back");
}
}
}
為什么第二次轉換 Throw Back 作業不順利,只是立即從 Throwing 狀態“跳轉”到 Grounded(idle) 狀態?
uj5u.com熱心網友回復:
您在右側看到您的兩個狀態如何在第一個過渡中重疊更多然后在第二個過渡中 -> 第二個過渡幾乎沒有任何持續時間.. 在設定中您可以使持續時間更長 => 更平滑
請參閱
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/405080.html
標籤:
上一篇:Unity中的超出范圍例外
