动画混合
什么是动画混合
游戏动画中常见的功能就是在两个或者多个相似运动之间进行混合
比如
- 根据角色的速度来混合行走和奔跑动画
- 根据角色的转向来混合向左或向右倾斜的动作
你可以理解是高级版的动画过渡
创建动画混合状态
在Animator Controller窗口 右键->Create State->From New Blend Tree
动画混合的种类
1D混合
用一个简单参数控制动画的混合,之所以叫1D是因为一个参数可以看作是1维线性的
2D混合
可以简单理解为是用两个参数控制动画的混合,之所以叫2D是因为有两个参数 可以看作是2维平面xy轴的感觉
2D混合的种类
2D Simple Directional
2D简单定向模式 运动表示不同方向时使用 比如前后左右走
2D Freeform Directional
2D自由形式定向模式 同上 运动表示不同方向时使用 但是可以在同一方向上有多个运动 比如向前跑和走
2D Freeform Cartesian
2D自由形式笛卡尔坐标模式 运动不表示不同方向时使用 比如向前走不拐弯 向前跑不拐弯 向前走右转 向前跑右转
Direct
直接模式 自由控制每个节点权重,一般做表情动作等
1D混合
1D混合就是通过一个参数来混合子运动

Parameter 参数,用于控制混合的参数,在参数列表中的参数
蓝色图像 可以在这里控制n个动画的阈值
Motion 关联的动画列表,可以用鼠标改变顺序
Threshold 对应动作的临界阈值 当等于这个值时动作权重最大(完全播放该动作) 这个值可以完全自由控制,数值范围不定
控制动作的播放速度
是否镜像动作Automate Thresholds 是否自动设置阈值,它会在取值范围内平均分 一般可以取消勾选我们手动控制更准确
Compute Thresholds 计算阈值的方式

会从动画剪辑的根运动中获去数据 Speed:速度 Velocity X、Y、Z:xyz上的分速度 Angular Speed(Rad 、Deg):角度或者弧度表示的角速度
举例: 比如你的动画剪辑行走动画时Speed速度是1.5个单位每秒 慢跑是2.3个单位每秒,快跑是4个单位每秒,阈值就会根据这些值来进行设置进行混合
Adjust Time Scale
调整时间刻度

- Homogeneous Speed:均匀速度
- Reset Time Scale:重置时间刻度
控制动作的播放速度
是否镜像动作
