UE4学习笔记 FPS游戏制作17 让机器人持枪 销毁机器人时也销毁机器人的枪 让机器人射击

添加武器插槽

打开机器人的Idle动画,方便查看武器位置

在动画面板里打开骨骼树,找到右手的武器节点,右键添加一个插槽,重命名为RightWeapon,右键插槽,添加一个预览资产,选择Rifle,根据Rigfle的角度调整插槽的角度

生成武器

将FppShooter事件图表里,开始时生成新枪的代码复制到RobotShooter里,但是我们只保留生成步枪的部分

这样子机器人就有枪了

销毁武器

由于武器是一个Actor,不会跟随角色的销毁自动销毁,所以销毁角色时要显式的销毁所持有的武器

在Shooter的事件图表里添加如下节点

调用射击

为了简单起见,我们让机器人一直开枪

在RobotShooter里,新建一个函数AlwaysShoot

打开机器人的控制类RobotController

新建一个纯函数GetRobotShooter,返回值为RobotShooter的引用

打开RobotController的事件图表,新增如下节点,调用射击方法,Delay节点的值是0,表示下一帧执行,因为AlwaysShoot内GetCurrentGun方法需要获取当前使用的武器,但是武器是在RobotShooter的Begin事件里执行的,和这里为同一时机,如果同时调用,会导致获取到的Gun引用为空

相关推荐
ST.J11 分钟前
SQL与数据库笔记
数据库·笔记·sql
肥肠可耐的西西公主17 分钟前
后端(JDBC)学习笔记(CLASS 1):基础篇(一)
笔记·学习
励志不掉头发的内向程序员1 小时前
从零开始的python学习——文件
开发语言·python·学习
悠哉悠哉愿意2 小时前
【数学建模学习笔记】无监督聚类模型:分层聚类
笔记·python·学习·数学建模
UQI-LIUWJ2 小时前
unsloth 笔记;数据集
笔记
北冥电磁电子智能2 小时前
江协科技STM32学习笔记补充之004
笔记·科技·学习
一个响当当的名号3 小时前
c++primer 个人学习总结-模板和泛型编程
开发语言·c++·学习
落羽的落羽3 小时前
【C++】C++11的可变参数模板、emplace接口、类的新功能
开发语言·c++·学习
滴滴滴嘟嘟嘟.3 小时前
Qt对话框与文件操作学习
开发语言·qt·学习
乱飞的秋天3 小时前
IO学习
学习