【UE4】动画插入{角色移动、死亡}(混合空间,状态机)
【事例中做的游戏是第三人称】
这样的视角:
主要素材(不动、前移、后移、左移、右移、3个死亡):
(HeroBlend是自己创的混合空间)
混合空间:
先设置好图表的X轴的意义(Direction)(范围-180~180)和Y轴的意义(Speed)(范围0~375)
大体将结点摆成这个位置(绿色的点是用来预览的)
具体意思就是:状态0-->即 Idle_Rifle_Hip为速度、方向都为0的默认状态(持枪不动)
(速度为0的时候都应该是这个状态)
状态1-->即 Jog_Fwd_Rifle为速度为375、方向为0的状态(持枪向前跑)
Jog_Bwd_Rifle(持枪向后跑)Jog_Lt_Rifle(持枪向左跑)Jog_Rt_Rifle(持枪向右跑)
接着在该混合空间的蓝图事件图表构建对应的逻辑
主要逻辑就是获取人物的速度(Speed)和 旋转角度(Rotation){角色移动}
【我们只需要Yaw方向上(和Z轴垂直的角度=和X轴夹角)】
Delta(Rotator)-->Normalized A-B(变成单位向量)
继续写动作蓝图逻辑{角色死亡}
主要逻辑就是先获取角色之前设置好的布尔变量IsDead,如果是真就做一次设置随机选择死亡的动画的操作(死亡动画有3个)
(DeathAnimationSelector的值)
状态机:
在动画蓝图中添加状态机
点进状态机设置如图的状态
(Locomotion是角色基本状态(旋转、移动),然后还有死亡的状态(Dead))
在Locomotion中
【HeroBlend就是一开始弄的混合空间(那个X轴Y轴)】
Locomotion到Dead的条件(双击箭头)
Dead动作