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

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

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

创建蓝图

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

调整胶囊体,设置模型

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

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

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

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

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

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

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

添加战斗相关

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

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

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

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

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

创建技能

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

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

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

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

死亡溶解效果

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

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

PBR这里需要三张图

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

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

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

相关推荐
科比不来it14 分钟前
Go语言数据竞争Data Race 问题怎么检测?怎么解决?
开发语言·c++·golang
给大佬递杯卡布奇诺39 分钟前
FFmpeg 基本API av_seek_frame函数内部调用流程分析
c++·ffmpeg·音视频
uxiang_blog1 小时前
C++进阶:重载类型转换
linux·开发语言·c++
moringlightyn2 小时前
c++11可变模版参数 emplace接口 新的类功能 lambda 包装器
开发语言·c++·笔记·其他·c++11·lambda·包装器
郝学胜-神的一滴2 小时前
使用Linux系统函数递归遍历指定目录
linux·运维·服务器·开发语言·c++·软件工程
会开花的二叉树3 小时前
C++微服务 UserServer 设计与实现
开发语言·c++·微服务
我星期八休息3 小时前
C++智能指针全面解析:原理、使用场景与最佳实践
java·大数据·开发语言·jvm·c++·人工智能·python
·白小白3 小时前
力扣(LeetCode) ——11.盛水最多的容器(C++)
c++·算法·leetcode
深思慎考4 小时前
RabbitMQ 入门:基于 AMQP-CPP 的 C++ 实践指南与二次封装
开发语言·c++·分布式·rabbitmq·api
深思慎考4 小时前
Ubuntu 系统 RabbitMQ 安装指南与使用(含 C++ 客户端与 SSL 错误解决)
c++·ubuntu·rabbitmq·github·rabbitmqpp