IsName(string)
Checks if name matches the name of the active state in the state machine.
Read time 1 minuteLast updated 10 days ago
Definition
- Type: Method
- Namespace: UnityEngine
- Assembly: UnityEngine.AnimationModule
public bool IsName(string name)
Parameters
The name to check.
Returns
Type | Description |
|---|---|
| bool | True if the animation state has the given name, false otherwise. |
Remarks
The name should be in the form Layer.Name or Layer.SubStateMachine.Name. For example, or .
Base.IdleBase.RunSM.JogForwardThis method calls Animator.StringToHash on the name parameter and compares it to AnimatorStateInfo.shortNameHash and AnimatorStateInfo.fullPathHash internally. If you call this method often, consider precomputing the hash of the name to improve performance.
// This script demonstrates how to check if the current state of an Animator has a specific name.using UnityEngine;[RequireComponent(typeof(Animator))]public class AnimatorStateInfoIsNameExample : MonoBehaviour{ // The Animator component on the GameObject this script is attached to. Animator m_Animator; void Start() { m_Animator = GetComponent<Animator>(); } void Update() { // If the current state has the specified name, log a message. var stateInfo = m_Animator.GetCurrentAnimatorStateInfo(0); if (stateInfo.IsName("Base.Idle")) { Debug.Log($"Currently in state Base.Idle."); } }}
Additional Resources: Animator.StringToHash , AnimatorStateInfo.IsTag.