Unity 动画系统 Animation和Animator 常用小功能
Animation控制动画播放:
Animation.Play(); //播放默认动画
Animation.Play(string animation); //根据动画名称播放动画
Animation控制动画停止:
Animation.Stop(); //停止默认动画
Animation.Stop(string name); //根据动画名称停止动画
Animation控制动画切换:
Animation.Play(string animation); //根据动画名称播放动画
Animation控制动画暂停:注意是暂停,不是停止。
Animation["name"].speed = 0;
Animation控制动画继续播放:
Animation["name"].speed = 1;
遍历所有的Animations:
foreach (AnimationState state in animation)
state.speed = 0.5f;
设置某一个动画的播放模式:
1.Animation创建的Animation文件设置方法;类型有:Once,Loop,Pingpong。
2.Animator创建的Animation文件设置方法;勾选loop time就代表循环播放,不勾选则代表一次。
3.代码方式,有点小复杂,没记录
Animator播放动画:
Animator.Play("StateName");
设置Animator的更新模式:
Animator.updateMode.ToString()
获得当前播放的动画:
AnimatorClipInfo[] a = animator.GetCurrentAnimatorClipInfo(0);
string name = a[0].clip.name;
判断当前动画是否为xx:
Animator.GetCurrentAnimatorStateInfo(0).IsName("xx")
播放到某帧触发的事件:
AnimationClip.AddEvent( AnimationEvent evt );
or
在界面手动添加事件