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

添加武器插槽

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

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

生成武器

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

这样子机器人就有枪了

销毁武器

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

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

调用射击

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

在RobotShooter里,新建一个函数AlwaysShoot

打开机器人的控制类RobotController

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

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

相关推荐
小冷coding3 分钟前
复杂场景下的ERP系统优化策略:让企业管理系统焕发新生
笔记
随意起个昵称6 分钟前
【二分做题笔记】组装玩具
笔记·算法
Lips6117 分钟前
2026.1.13力扣刷题笔记
笔记·算法·leetcode
deng-c-f7 分钟前
Linux C/C++ 学习日记(62):Redis(三):订阅
数据库·redis·学习
L16247612 分钟前
Prometheus、Cadvisor和Grafana体系完整学习手册
学习·grafana·prometheus
Silvia_suu29 分钟前
修电脑的笔记
笔记
望云山19035 分钟前
ESP32—S3学习--入门五个基础实验
嵌入式硬件·学习
renhongxia138 分钟前
学习基于数字孪生的质量预测与控制
人工智能·深度学习·学习·语言模型·自然语言处理·制造
koo36440 分钟前
pytorch深度学习笔记16
pytorch·笔记·深度学习
开开心心_Every42 分钟前
重复图片智能清理工具:快速查重批量删除
java·服务器·开发语言·前端·学习·edge·powerpoint