- 新建Animator Controller文件
AnyState:任意状态;常用作播放死亡状态,不管当前角色在播放什么状态,都可以被杀死然后播放死亡动作;
Entry/Exit:进入状态机和退出状态机,进入状态机默认连接默认状态动画;
Idle:橙色(名字可以改),一般是默认动画,一般播放待机动画;
Run:一般状态(名字可以改)
- 动画状态机的层和参数:
Layer:动画状态机中还可以嵌套一个动画状态机;
Paramters:状态切换参数(int float bool trigger);
- 动画状态切换
Solo:动画切换优先;
Mute:动画切换禁止;
Has Exit time :勾选上会在切换动画时上一动作结束后再播放下一动画
Setting: ExitTime:动作切换上一动作退出时间;
Fixed Duration/Transtion Duration:动作切换时间长度;
Transtion offset:下一动作所在上一动作比例;(动手测试下);
Interruption sources:打断动画切换来源:
重要:conditions:这里面的切换动作参数是paramers里面定义的,条件可以使大于、等于、不等于、小于
- Animator组件:
Controller:AnimatorController文件;
Avatar:放骨骼文件;
Apply Root motion:如果勾选代表使用动画中的位移;如果当前游戏物体上的代码组件中有OnAnimatorMove内置函数,位移就受代码控制;
Update Mode:正常更新、物理更新(FixUpdata更新)、不受时间缩放影响;
Culling Mode:
- 始终有动画;
- 当摄像机没有渲染该物体,就会停止部分Transform相关功能;
- 当摄像机没有渲染该物体,整个动画都不会被渲染;
- 代码操作Animator
- 战斗攻击流程图