【UE5.1 角色练习】11-坐骑——Part1(控制大象移动)

前言

在上一篇(【UE5.1 角色练习】10-物体抬升、抛出技能 - part2)基础上创建一个新的大象坐骑角色,并实现控制该角色行走的功能。 

效果

步骤

1. 在商城中下载“African Animal Pack”资产和“ANIMAL VARIETY PACK”资产导入工程中

2. 复制一份第三人称角色蓝图,这里命名为“Character_Elephant”

打开“Character_Elephant”,将网格体组件中的骨骼网格体资产替换为“SK_Elephant”

增加弹簧臂长度

新增一个骨骼网格体组件,用于表示象牙,这里命名为“SkeletalMesh_Teeth”,骨骼网格体资产使用“SK_ElephantTusksBig”

3. 新建一个动画蓝图,骨骼使用“SK_Elephant_Skeleton”

动画蓝图这里命名为“ABP_Elephant”

打开“ABP_Elephant”,在动画图表中添加一个新的状态机,这里命名为“Default”

打开“Default”状态机,添加一个状态,这里状态命名为“Idle/Run”

打开状态“Idle/Run”,我们需要在里面添加大象走路和跑步的动画混合空间。因此这里先创建一个

混合空间,骨骼选择“SK_Elephant_Skeleton”

这里命名混合空间为“BlendSpace_Elephant_IdleRun”

打开“BlendSpace_Elephant_IdleRun”,设置一下水平和垂直坐标

将待机的动画序列“ANIM_Elephant_IdleLookAround放到方向为0,Speed为10位置处

将走路的动画序列放置在(0,400)处

放入大象向左转和向右转的动画序列

放入大象跑步的动画序列

4. 回到动画蓝图的状态“Idle/Run”中,将刚创建的混合空间作为该状态的输出姿势,可以看到我们需要设置混合空间的“Direction”和“Speed”数值

新建两个浮点型变量,这里就命名为“Direction”和“Speed”

将这两个变量的值作为混合空间的输入值

再添加一个布尔类型变量,这里命名为“IsInAir”,用于表示大象当前是否在空中(常用于掉落或跳起)

接下来我们需要在动画蓝图的事件图表中去设置这三个变量的值

5. 在大象蓝图中,设置网格体的动画使用我们上面创建的动画蓝图

设置最大行走速度为800

如果感觉大象转向速度太快,我们可以修改一下旋转速率

此时控制大象移动效果如下,可以看到象牙位置有误,因此我们需要设置蒙皮

6. 在大象蓝图的事件图表中添加如下节点,表示将牙齿蒙在身体上

此时可以看到象牙的位置准确无误

上一篇:高中数学:数列-基础概念-一、什么是数列?


下一篇:Python怎么染色:深入探索Python中的文本和图形着色技巧