Version: 2021.3


public void ResetTrigger (string name);
public void ResetTrigger (int id);


name 参数名称。
id 参数 ID。



用于重置动画控制器中仍然处于激活状态的 Trigger 参数。确保在动画控制器中使用相同的名称创建参数。有关如何设置触发器的更多信息,请参阅 Animator.SetTrigger

//Attach this script to a GameObject with an Animator component attached.
//For this example, create parameters in the Animator and name them “Crouch” and “Jump”
//Apply these parameters to your transitions between states

//This script allows you to trigger an Animator parameter and reset the other that could possibly still be active. Press the up and down arrow keys to do this.

using UnityEngine;

public class Example : MonoBehaviour { Animator m_Animator;

void Start() { //Get the Animator attached to the GameObject you are intending to animate. m_Animator = gameObject.GetComponent<Animator>(); }

void Update() { //Press the up arrow button to reset the trigger and set another one if (Input.GetKey(KeyCode.UpArrow)) { //Reset the "Crouch" trigger m_Animator.ResetTrigger("Crouch"); //Send the message to the Animator to activate the trigger parameter named "Jump" m_Animator.SetTrigger("Jump"); }

if (Input.GetKey(KeyCode.DownArrow)) { //Reset the "Jump" trigger m_Animator.ResetTrigger("Jump"); //Send the message to the Animator to activate the trigger parameter named "Crouch" m_Animator.SetTrigger("Crouch"); } } }
Copyright © 2020 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。