Unity 动画 Tag nameHash

来源:互联网 发布:苹果接电话变声软件 编辑:程序博客网 时间:2024/05/20 10:11
using UnityEngine;
using System.Collections;

public class Test : MonoBehaviour {
    Animator anim;
    AnimatorStateInfo info;
    int num_Parameter;
    // Use this for initialization
    void Start () {
        anim = GetComponent<Animator> ();
        num_Parameter = Animator.StringToHash("num_Parameter");
    }
    
    // Update is called once per frame
    void Update () {
        info = anim.GetCurrentAnimatorStateInfo (0);
        //利用anim的Tag来确定此时正在执行的是哪一个动画
        if (info.tagHash == Animator.StringToHash ("T")) {
            print ("Test");
        }
        if (info.tagHash == Animator.StringToHash ("T1")) {
            print ("Test1");
        }
        if (info.IsTag ("T")) {
            print ("Test");
        }
        if (info.IsTag ("T1")) {
            print ("T1");
        }
        //

        //利用anim的名称来确定此时正在执行的是哪一个动画
        if (info.nameHash == Animator.StringToHash ("Base Layer.Test")) {
            print ("Test");
        }
        if (info.nameHash == Animator.StringToHash("Base Layer.Test1")) {
            print ("Test1");

        }

        if (info.IsName ("Test")) {
            print ("Test");
        }
        if (info.IsName ("Test1")) {
            print ("Test1");
        }
        //
        //num_Parameter = Animator.StringToHash("num_Parameter");
        //利用动画参数的hash来确定动画的Transition
        if (Input.GetMouseButtonDown (0)) {
            if (info.IsName ("Test1")) {
                anim.SetInteger(num_Parameter,0);
            }
            if(info.IsName("Test")){
                anim.SetInteger(num_Parameter,1);
            }
        }
        //利用动画参数的名称来确定动画的Transition
        if (Input.GetMouseButtonDown (0)) {
            if (info.IsName ("Test1")) {
                anim.SetInteger("num_Parameter",0);
            }
            if(info.IsName("Test")){
                anim.SetInteger("num_Parameter",1);
            }
        }

    }

}

(其中   1   Test的tag是“T”,Test1的tag是“T1”

        2   num_Parameter = 0时 Test1------》Test , num_Parameter = 1时 Test------》Test1

0 0
原创粉丝点击