当前位置: 首页 > article >正文

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

添加武器插槽

打开机器人的Idle动画,方便查看武器位置
在动画面板里打开骨骼树,找到右手的武器节点,右键添加一个插槽,重命名为RightWeapon,右键插槽,添加一个预览资产,选择Rifle,根据Rigfle的角度调整插槽的角度
在这里插入图片描述

生成武器

将FppShooter事件图表里,开始时生成新枪的代码复制到RobotShooter里,但是我们只保留生成步枪的部分
在这里插入图片描述
这样子机器人就有枪了

销毁武器

由于武器是一个Actor,不会跟随角色的销毁自动销毁,所以销毁角色时要显式的销毁所持有的武器
在Shooter的事件图表里添加如下节点
在这里插入图片描述

调用射击

为了简单起见,我们让机器人一直开枪
在RobotShooter里,新建一个函数AlwaysShoot
在这里插入图片描述
打开机器人的控制类RobotController
新建一个纯函数GetRobotShooter,返回值为RobotShooter的引用
在这里插入图片描述
打开RobotController的事件图表,新增如下节点,调用射击方法,Delay节点的值是0,表示下一帧执行,因为AlwaysShoot内GetCurrentGun方法需要获取当前使用的武器,但是武器是在RobotShooter的Begin事件里执行的,和这里为同一时机,如果同时调用,会导致获取到的Gun引用为空
在这里插入图片描述


http://www.kler.cn/a/612119.html

相关文章:

  • 模拟电子技术-基本放大电路
  • ⑦(ACG-网络配置)
  • RCE学习情况
  • 使用 Node.js 和 163 邮箱发送邮件
  • 详解TCP的四次握手和三次挥手,以及里面每个阶段的状态
  • 北斗导航 | 改进伪距残差矢量的接收机自主完好性监测算法原理,公式,应用,RAIM算法研究综述,matlab代码
  • 机器翻译和文本生成评估指标:BLEU 计算公式
  • k8s存储介绍(一)configmap
  • Spec2MP:项目管理之项目质量管理
  • 计算机二级WPS Office第十一套WPS演示
  • [微信小程序]对接sse接口
  • docker-实战
  • 解析 ID 数组传参的解决方案:基于 Axios 的实现
  • 使用electron-vite创建桌面应用
  • 清晰易懂的Trae实现为AI编程从安装到实战开发ToDoList
  • vue响应式原理剖析
  • Vue 把 Echarts 图传给后端:文件流信息方式传递
  • 第 12 章(番外)| Solidity 安全前沿趋势 × 审计生态 × 职业路径规划
  • Flutter TabBar 右侧渐变遮罩实现中的事件处理问题
  • 【渗透测试】Fastjson 反序列化漏洞原理(一)