【UE5.1】NPC人工智能——01 准备NPC角色

效果

步骤

  1. 之前我们已经创建了"BP_NPC"(见:【UE5.1 角色练习】06-角色发射火球-part2

该蓝图继承于角色类

我们在该蓝图中添加了两个方法和两个变量。方法一个是用于修改角色HP值的,另一个是在收到伤害后执行的逻辑。两个变量分别表示NPC当前的HP值和满HP值。

修改HP的函数"F_ChangeHP"逻辑如下。受到伤害的函数"F_AfterDamage"的逻辑还没写

当NPC受到伤害后执行如下逻辑

  1. 接下来我们开始制作狮子NPC,在"AfricanAnimalsPack"资源包中找到狮子相关资产

将狮子的骨骼和骨骼网格体复制到项目文件夹

将狮子相关的动画也复制过来

为复制过来的骨骼网格体指定骨骼

选中复制过来的所有动画序列,然后替换骨架

替换为复制过来的骨骼

  1. 找到我们之前制作的大象蓝图"Character_Elephant"(见:【UE5.1 角色练习】11-坐骑------Part1(控制大象移动)_ue5 character 四足动物

复制一份,这里命名为"Character_Lion"

打开"Character_Lion",在类设置中将父类改为"BP_NPC"

选中网格体组件,将骨骼网格体资产替换为狮子

删除"SkeletalMesh_Teeth"组件

编译后删除报错的节点

将胶囊体组件的半高和半径都改为很小,因为我们不用这个组件作为碰撞

新添加一个胶囊体组件用作狮子的碰撞

设置合适的大小和位置

  1. 新建一个动画蓝图

这里命名为"ABP_Lion"

打开"ABP_Lion",创建一个混合空间

这里命名为"BS_Lion_IdleRun"

  1. 打开"BS_Lion_IdleRun",设置水平坐标名称为"Direction",设置垂直坐标名称为"Speed"

坐标轴中放置动画序列

  1. 回到动画蓝图"ABP_Lion"中,添加如下三个变量

在事件图表中添加如下节点来设置上面三个变量的值

在动画图表中新建一个状态机,这里命名为"Default"

进入"Default",添加一个状态,这里命名为"Idle/Run"

进入状态"Idle/Run",将我们制作的混合空间"BS_Lion_IdleRun"作为该状态的输出动画姿势

  1. 打开狮子的蓝图"Character_Lion",设置动画类为上一步创建的动画蓝图

将狮子网格体的脚步与胶囊体平齐,这样狮子的脚部不会陷入地面

调整一下弹簧臂的位置

此时可以看到我们已经可以控制狮子进行移动

相关推荐
ricky6753 天前
[Linux]Linux系统的20个实用命令详解
ue5
AA陈超4 天前
虚幻引擎5 GAS开发俯视角RPG游戏 P05-01.创建游戏玩法标签
c++·游戏·ue5·游戏引擎·虚幻
reddingtons5 天前
场景美术师的“无限画板”:UE5中非破坏性的材质混合(Material Blending)工作流
ue5·材质·设计师·技术美术·游戏策划·游戏美术·substance
m0_552200825 天前
《UE5_C++多人TPS完整教程》学习笔记61 ——《P62 武器开火特效(Fire Weapon Effects)》
c++·游戏·ue5
努力的小钟5 天前
UE5 GAS GameAbility源码解析 EndAbility
ue5
AA陈超5 天前
虚幻引擎5 GAS开发俯视角RPG游戏 P05-04 使用效果应用游戏标签
c++·游戏·ue5·游戏引擎·虚幻
zhangzhangkeji5 天前
UE5 测量 -1,长度测量:P2制作定位球与定位线,P3制作射线检测节点,P4在鼠标位置生成定位球
ue5
AA陈超6 天前
虚幻引擎UE5专用服务器游戏开发-33 在上半身播放组合蒙太奇
c++·游戏·ue5·游戏引擎·虚幻
zhangzhangkeji6 天前
cesium126,230130,Editing Tileset Materials - 0,编辑瓦片集材质,官方教程:
ue5
zhangzhangkeji6 天前
cesium126,230131,区域局部染色:赋值材质实例,建立“材质图层混合”文件,建立裁剪多边形,并应用自己的材质实例
ue5