Unity - A计划(永久有效期) 扫二维码继续学习 二维码时效为半小时

(197评价)
价格: 4431.00元
有关动画animator的状态控制
偶尔的時光发起了问答2021-10-10
4
回复
323
浏览

老师好,我这边想获取animator的状态,以便在动画结束的时候添加一些提示然后进行下一步操作,但是用animatorInfo.normalizedTime >= 1来进行判断没办法判断,不知道有没有什么好方法没有

所有回复
  • 老师_Trigger 2021-10-11

    同学你好,一般都是这样判断的,可以尝试使用>=0.9来做,把值设置小试试,这个跟做的控制器里的状态有关。实在不行可以使用动画事件,把回调方法直接放到动画里就行,第一个方法不会的话参考一下云端战纪案例,第二个可以参考一下消灭病毒案例

    • 偶尔的時光 2021-10-12

      老师好,我这边通过使用控制时间的方式解决了,在动画播放的时候运行一个时间,动画播放的时间结束的时候让记录的时间重置,同时进行下一步操作

      (0) 回复
    还有-4条回复,点击查看
    你还没有登录,请先登录注册
  • 沧海一声笑 2021-10-18

    可以在面板里面给动画结束的时候添加一个shi'jian

    还有-5条回复,点击查看
    你还没有登录,请先登录注册
  • 偶尔的時光 2021-11-09

    hello,老师,彻底解决了,通过 ani.runtimeAnimatorController.animationClips获取当前所有的动画片段,然后获取播放动画片段的长度,然后在开始播放的时候再update开始一个计时,如果计时大于等于这个动画的时间长度,就开始下一步操作

    private float AniClmp(GameObject obj)
        {
            Animator ani = obj.GetComponent<Animator>();
            AnimationClip[] clips = ani.runtimeAnimatorController.animationClips;
            foreach (AnimationClip item in clips)
            {
                aniLength = item.length;
            }
            return aniLength;
        }

    还有-5条回复,点击查看
    你还没有登录,请先登录注册
发表回复
你还没有登录,请先 登录或 注册!