判断动画状态机当前播放的动画。

 
   Animator  thisAni;//自身的动画控制器
    private void Awake()
    {
        //获取自身的动画控制器
        thisAni = this.GetComponent<Animator>();
    }


    float speed = 0;
    public int tempNumber = 0;
    private void Update()
    {
        if (Input.GetKey(KeyCode.W))
        {
            speed += Time.deltaTime * 0.1f;
           
            thisAni.SetFloat("speed", speed);
            speed = Mathf.Clamp01(speed);
        }


        设置索引图层的权重
        //thisAni.SetLayerWeight(2, 1);


        //AnimatorStateInfo 动画层状态信息类
        //GetCurrentAnimatorStateInfo 获取动画控制器中指定层的状态信息
        AnimatorStateInfo info = thisAni.GetCurrentAnimatorStateInfo(0);
        //获取当前动画状态的哈希值
        tempNumber = info.shortNameHash;
        
        //这句代码只是将字符串转换成哈希值 其他没什么卵用
        print(Animator.StringToHash("Blend Tree"));


        //判断当前状态是否为跑
        print("当前状态:" + Animator.StringToHash("Run").Equals(tempNumber));
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值