0x00
这是又一次翻以前的代码,用协程写了控制动画播放的逻辑,比如通过时间,检测动画是否播放完成等等。
为了更加通用的场景,这次决定用 Animation Event 来实现,进行尝试。
前面有用过一个 UIEventListener 的脚本组件作为 UI 对象统一添加事件,感兴趣可以点这里去看看……
0x01
在开发过程中,判断一个动画是否播放完成是一个常见的需求,如何在 Unity 中处理这些,首先来解决这些小问题:
- 控制播放流
在 Animator 组件中,播放特定动画片段
animator.Play(string stateName, int layer, float normalizedTime);
- 停止播放
animator.speed = 0;
- 获取当前状态机的全部动画片段(AnimationClip[])
var clips = animator.runtimeAnimatorController.animationClips;
- 获取当前播放的动画片段
animator.GetCurrentAn