1、创建新的状态层
a) 通过下图的1按钮创建一个新的层
b) 通过下图2属性设置图层的权重,如果为0,则该图层的状态不会影响到总的状态机
c) Mask是设置动画的Avatar的关联节点,创建Avatar Mask之后可以编辑
2、编辑Avatar Mask:点击可以改变状态,如果红色则该节点不关联动画
3、获取指定状态层的状态的Hash名:
int reloadHashName = Animator.StringToHash("Layer2.Reload");
获取的方式:状态层名称.状态名
作用:获取到的名称用于在游戏更新时判断状态机当前状态是否为指定状态
4、获取游戏更新时状态机的状态信息
private AnimatorStateInfo layer2StateInfo;
layer2StateInfo = anima.GetCurrentAnimatorStateInfo (1);
通过当前的动画控制器获取指定状态层的状态信息,
GetCurrentAnimatorStateInfo 的参数是层的索引,从0开始
5、获取当前状态机的状态哈希名
layer2StateInfo.shortNameHash
6、案例:做一人物在行走的同时可以进行取枪动作的DEMO
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-30 12:57:25