虚幻5|给武器添加碰撞检测与伤害

本章内容衔接上两章,需要完成上两章才能用本章内容

虚幻5|角色武器装备的数据库学习(不只是用来装备武器,甚至是角色切换也很可能用到)-CSDN博客虚幻5|普通攻击,使用接口更方便-CSDN博客

如有疑问,可访问上章内容,

一,打开武器网格体添加插槽

1.如果武器没有上碰撞,记得给武器添加简单碰撞或复制碰撞,打开武器网格体左上角有碰撞选择,可添加碰撞

2.点击右侧的插槽管理器,添加两个插槽,一个是检测开始,一个是检测结束,分别放在能受到伤害的范围

二,碰撞检测

1.创建一个actor组件,取名为武器碰撞组件

2.打开武器碰撞组件

创建一个组件,类型为基元组件,命名为碰撞组件

3.创建函数,命名为设置碰撞对象

并把刚刚的碰撞组件拖入

4.增加一个布尔变量,命名为是否碰撞?

5.再增加三个函数,命名为可以碰撞,禁用碰撞,清空碰撞

可以碰撞

禁用碰撞

清空碰撞,重点理解

6.打开武器碰撞组件的事件图表

先编写白线,再编写蓝线,其他颜色的线都是后面才链接的

注意,radius半径要再细节处设置其默认值。创建数组里的敌人,下面有

创建数组的敌人,我们需要到项目设置里添加,如果你看过我的高光添加的文章里也有,我这里再写一次

7.项目设置里添加新的碰撞对象

打开最左上角的编辑->选中项目设置->找到碰撞->新建object通道,命名为敌人

8.打开帧线,这样有助于我们运行时看到武器检测线,针对一帧

三,创建一个蓝图类Actor

1.打开后,组件添加一个静态网格体,

2.右侧细节栏,选择我们想要的敌人

并设置他的碰撞预设为以下

四,使用武器碰撞组件

1.打开我们创建好的武器蓝图类,武器一般是actor,属于静态网格体

2.打开,添加武器碰撞组件

3.打开我们普通攻击章节创建好的战斗组件

4.添加一个变量,装备的武器,引用我们武器的变量类型,类型名为装备的近战武器

5.创建两个函数,设置装备的武器和输出装备的武器

通过这个战斗组件的函数,获取我们的装备的武器(actor蓝图类)里添加的武器碰撞组件(actor组件),从而使用到我们的武器碰撞组件(actor组件)内的函数

设置装备的武器

输出装备的武器

五,

1.创建一个武器碰撞动画通知状态,不是通知,而是通知状态,并命名为武器碰撞动画通知状态

2.点开重载,重载两个函数,一个已接收通知开始,再重载一个已接收通知结束

3.打开函数已接收通知开始的函数

按我以下步骤,编写蓝图

首先mesh comp链接 get owner,获取拥有者

从获取拥有者链接按类获取组件,会出现两个一样的,我们选第二个

在按类获取组件,选择类,选择我们的战斗组件,并链接输出装备的武器(这是调用函数)

输出装备的武器链接isvail_有效

后面就没什么要注意的了

照图片编写即可

4.打开函数已接收通知结束的函数

复制粘贴我们已接收通知开始函数的内容,把可以碰撞(调用函数)改成禁用碰撞

既然我们设置好这些通知,我们就要用,一般都是用在动画蒙太奇里的,这又是个知识点

六,在蒙太奇里使用通知

1.在上一章写普通攻击里,我们也用到的蒙太奇里添加新的通知轨道。

在通知轨道里放上我们创建好的武器碰撞通知,如果通知轨道不够,可以添加通知轨道。

这武器碰撞通知调用的是我们的已接收开始的通知和已接收结束通知

武器碰撞通知的长度拉取范围是攻击打中敌人的阶段,这个看你是什么武器,尝试调整

其他攻击的蒙太奇都一样,看你需要

七,

1.打开我们的角色蓝图,找到装备武器的后面

添加以下蓝图

为什么呢?原理是当我们拿

 

最后我们要设置碰撞对象,还没有设置,对象(武器)该做什么都知道了

运行一下,如果攻击,武器出现红色框框,说明程序运行成功

八,打开武器碰撞组件

1.编写事件图表

九.传递命中结果的内容

1.在武器碰撞组件的事件图表后面,也就是上面第八点的蓝图后面了

添加一个事件分发器,命名为命中

2.选中该事件分发器,右侧细节处,增加输入

3.编写以下蓝图

事件分发器命中拖入调用即可

十.使用调用命中

1.打开装备的武器的Actor蓝图类进行编写(武器的actor蓝图类且含有武器碰撞组件)

选中武器碰撞组件

2.右侧细节处,往下滑找到命中的事件

没有的话,可能你没有编译

3,点击+符号,获取事件蓝图,编写以下蓝图

十一,使用命中事件

1.打开敌人的角色蓝图,编写以下蓝图进行测试

给敌人添加背打击到彪血的特效

写完这些就方便了,我们可以使用任何武器都可以进行检测

只需要在武器表数据(有这一章内容)去添加武器及其信息,以及在武器的网格体上添加检测开始和检测结束的插槽即可,如下

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/402706.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

利用EditPlus进行Json数据格式化

利用EditPlus进行Json数据格式化 git下载地址:https://github.com/michael-deve/CommonData-EditPlusTools.git (安装过editplus的直接将里面的json.js文件复制走就行) 命令:Cscript.exe /nologo “D:\Program Files (x86)\EditPlus 3\json.js” D:\P…

简单的敏感词提示功能

简单的敏感词提示功能 1. 需求 公司现在接到通知,部分接口的部分手动输入字段,需要新增敏感词报红提示,敏感词汇现在应该是7000多个左右,需要我们提供一个敏感词校验接口,如果前端输入敏感词,则前端提示出…

【网络】UDP回显服务器和客户端的构造,以及连接流程

文章目录 回显服务器(Echo Server)0. 构造方法1. 接收请求2. 根据请求计算响应3. 将响应写回客户端4. 完整代码 客户端(Echo Client)0. 构造方法1. 读取输入2. 构造一个 UDP 请求3. 从服务器读取响应4. 完整代码 服务器与客户端连…

【自动化测试】技术交流论坛

前言 本篇使用Selenium3Junit5对个人技术交流论坛进行简单的自动化测试,如有错误,请在评论区指正,让我们一起交流,共同进步! 文章目录 前言1. 项目基础描述2. 编写手工测试用例3. 测试用例转自动化测试用例3.1 前置准…

NVR方案背景与产品介绍与构建一套完整的NVR产品解决方案

一、NVR和DVR 在视频监控领域,DVR和NVR是两种常用的录像技术。它们在系统结构、视频处理、存储和访问方式等方面存在明显的区别。,但都在视频监控中扮演着重要的角色。首先来了解它们的区别和特点,这有助于在选择合适的设备时做出明智的决策…

C语言第20天笔记

文件操作 概述 什么是 文件 文件时保存在外存储器上(一般代指磁盘,也可以是U盘、移动硬盘等)的数据的集合。 文件操作体现在哪几个方面 1. 文件内容的读取 2. 文件内容的写入 数据的读取和写入可被视为针对文件进行输入和输出的操作&a…

pytorch实现单层线性回归模型

文章目录 简述代码重构要点 数学模型、运行结果数据构建与分批模型封装运行测试 简述 python使用 数值微分法 求梯度,实现单层线性回归-CSDN博客 python使用 计算图(forward与backward) 求梯度,实现单层线性回归-CSDN博客 数值微分…

24/8/17算法笔记 策略梯度reinforce算法

import gym from matplotlib import pyplot as plt %matplotlib inline#创建环境 env gym.make(CartPole-v0) env.reset()#打印游戏 def show():plt.imshow(env.render(mode rgb_array))plt.show() show()定义网络模型 import torch #定义模型 model torch.nn.Sequential(t…

希亦、洁盟、苏泊尔眼镜清洗机哪款好用?热门眼镜清洗机测评总结

随着科学技术的发展,电子设备的升级,越来越多的人开始戴眼镜,而眼镜由于长时间的佩戴,镜框以及镜面都积累了一些灰尘以及人们肉眼所看不见的细菌,但是如果你使用普通的清洁方式去清洗的话肯定是清洗不干净的&#xff0…

【protobuf】ProtoBuf——proto3语法详解、字段规则、消息类型的定义与使用、通讯录的写入和读取功能实现

文章目录 ProtoBuf5. proto3语法详解5.1 字段规则5.2 消息类型的定义与使用 ProtoBuf 5. proto3语法详解 在语法详解部分,依旧通过项目推进的方式开展教学。此部分会对通讯录多次升级,用 2.x 表示升级的版本,最终将完成以下内容的升级&#x…

海康VisionMaster使用学习笔记4-快速匹配模块

快速匹配模块 快速匹配包括基本参数,特征模板,运行参数,结果显示 基本参数 可以修改图像源和模块的ROI区域. 特征模版 可以配置管理所有的模版,点击创建可以新增模版,也可以通过载入加载本地的模型 建立新模版 点击创建,可以选择当前图像或本地图像进行建模 模版存图按…

使用docker compose一键部署 Portainer

使用docker compose一键部署 Portainer Portainer 是一款轻量级的应用,它提供了图形化界面,用于方便地管理Docker环境,包括单机环境和集群环境。 1、创建安装目录 mkdir /data/partainer/ -p && cd /data/partainer2、创建docker…

uni-app 使用九宫格(uni-grid)布局组件

1、运行环境 开发工具为 HBuilder X 4.23, 操作系统为 Windows 11。Vue.js 版本为 3. 2、操作步骤 首先,登录 HBuilder X。然后用桌面浏览器,访问官网组件网址。 https://ext.dcloud.net.cn/plugin?nameuni-grid 在组件网址右上角、点击“下载插…

每日一题-贪心算法

122. 买卖股票的最佳时机 II - 力扣(LeetCode) 55. 跳跃游戏 - 力扣(LeetCode) 这个题目一开始肯定是会懵,就比如说一开始先跳几步,之后再怎么跳,其实我们就可以用最大范围来算就行了&#xff0…

开发笔记:uniapp+vue+微信小程序 picker +后端 省市区三级联动

写在前面 未采用: 前端放置js 或者 json文件进行 省市区三级联动 采用: 前端组件 后端接口实现三级联动 原因:首先微信小程序有大小限制,能省则省,其次:方便后台维护省市区数据,完整省市区每年更新好像…

SQL基础教程(八)SQL高级处理

※食用指南:文章内容为《SQL基础教程》系列学习笔记,该书对新手入门非常友好,循序渐进,浅显易懂,本人主要用来补全学习MySQL中未涉及的部分,便于刷题和做项目。 官方电子书:《SQL基础教程》第2…

Web安全:SqlMap工具

一、简介 sqlmap 是一款开源的渗透测试工具,可以自动化进行SQL注入的检测、利用,并能接管数据库服务器。它具有功能强大的检测引擎,为渗透测试人员提供了许多专业的功能并且可以进行组合,其中包括数据库指纹识别、数据读取和访问底层文件系统…

柔性超级电容器咋储能?生物聚合物在其中起啥作用?有啥挑战?

*本文只作阅读笔记分享* 一、引言 随着对化石燃料影响的日益关注,开发用于先进电化学能量存储设备的绿色和可再生材料变得至关重要。超级电容器因其出色的寿命、安全性和宽温度操作范围等优势而成为有前途的储能候选者。柔性超级电容器特别适合为轻质可穿戴电子设…

我常用的几个傻瓜式爬虫工具,收藏!

爬虫类工具主要两种,一种是编程语言第三方库,比如Python的scrapy、selenium等,需要有一定的代码基础,一种是图形化的web或桌面应用,比如Web Scraper、后羿采集器、八爪鱼采集器、WebHarvy等,接近于傻瓜式操…

qt生成一幅纯马赛克图像

由于项目需要&#xff0c;需生成一幅纯马赛克的图像作为背景&#xff0c;经过多次测试成功&#xff0c;记录下来。 方法一&#xff1a;未优化方法 1、代码&#xff1a; #include <QImage> #include <QDebug> #include <QElapsedTimer>QImage generateMosa…