67. UE5 RPG 创建法师敌人角色

我们设置的敌人类型分三种,分别时战士类型,远程射手,和法师类型。在前面,我们创建了战士和射手类型的,还没有法师类型的,在这一篇文章中,我们创建一个法师类型的角色。

64. UE5 RPG 创建新的双手攻击怪物里,我们创建了一个新的战士角色,而且也整理角色创建的所需的内容,这里我们将创建敌人的通用的内容省略掉,只解释一下不同的地方。

创建蓝图

我们基于敌人基类创建角色蓝图和动画蓝图

调整胶囊体,设置模型

添加武器,发现武器没有放到手上

我们在代码中,将武器添加到角色身上是通过命名"WeaponHandSocket",证明角色没有这个插槽

在角色的网格体上面添加一个

武器就被正确的添加到了手上

然后我们在动画蓝图中覆盖IdleRun的资产,让角色可以在待机状态和移动状态的动画顺利切换

将动画蓝图设置给骨骼网格体

记着,我们要修改角色的类型和移动速度

添加战斗相关

首先将攻击根运动开启,我们接下来创建攻击相关,创建攻击和受击的蒙太奇

攻击记得设置MotionWraping和事件通知

由于我们有发射火球时的声音,所以,我们尝试在蒙太奇中添加发射的声音(不同于角色)

萨满敌人是使用武器攻击的,我们设置通知是武器,并且在武器骨骼节点上设置技能释放位置。

资产创建完成以后,我们将数据设置到角色蓝图身上。

创建技能

现在角色缺少一个技能来实现攻击。我们基于之前的GA_RangedAttack,创建一个它的子类,用于定义敌人萨满的技能。

这里我们直接创建萨满使用火球术

然后打开蓝图修改默认值,我们使用火球术的配置,将生成的投掷物的类改掉,伤害类型也修改为火焰伤害

创建完成以后,记得将其添加到数据里面,设置它会被初始化

死亡溶解效果

最后就是制作死亡溶解效果,这个就是老生常谈了,我们可以编辑一个它专用的,或者基于通用的专门制作一下。在正常项目中,都是制作一个通用的材质,只要使用这个材质的模型,都使用它的材质实例,也方便后续增加功能,我们也不需要再去修改每个模型的材质。

我们将基础的PBR设置和溶解效果节点合并到一起

PBR这里需要三张图

我们将其设置为参数,这样在材质实例中可以修改掉使用的贴图。

如果需要修改什么,就勾选以后,即可修改

按照同样的方式,创建一个武器,设置完成,设置给角色蓝图

相关推荐
界面开发小八哥1 小时前
MFC扩展库BCGControlBar Pro v36.2:MSAA和CodedUI测试升级
c++·mfc·bcg·界面控件
极客BIM工作室4 小时前
C++ 限制类对象数量的技巧与实践
开发语言·javascript·c++
郝学胜-神的一滴4 小时前
Horse3D引擎研发笔记(四):在QtOpenGL下仿three.js,封装EBO绘制四边形
c++·3d·unity·游戏引擎·godot·图形渲染·虚幻
终焉代码6 小时前
【C++】STL二叉搜索树——map与set容器的基础结构
开发语言·数据结构·c++
源代码•宸6 小时前
深入浅出设计模式——行为型模式之观察者模式 Observer
开发语言·c++·经验分享·观察者模式·设计模式·raii
小马敲马6 小时前
[4.2-2] NCCL新版本的register如何实现的?
开发语言·c++·人工智能·算法·性能优化·nccl
soilovedogs8 小时前
百度之星2024初赛第二场 BD202411染色
c++·算法·百度之星
啊阿狸不会拉杆8 小时前
《算法导论》第 15 章 - 动态规划
数据结构·c++·算法·排序算法·动态规划·代理模式
2401_858286119 小时前
CD64.【C++ Dev】多态(3): 反汇编剖析单继承下的虚函数表
开发语言·c++·算法·继承·面向对象·虚函数·反汇编
重启的码农10 小时前
ZeroTier 源码解析 (6) 数据包 (Packet)
c++·网络协议