【UE】一个扫描效果(不使用后期处理体积)

效果

步骤

一、制作扫描效果

  1. 在3dsmax中新建一个圆形

设置半径为50mm,勾选"自适应"

转换为可编辑多边形

导出

  1. 打开虚幻编辑器,导入制作好的模型
  1. 创建一个材质,这里命名为"M_Sphere"

打开"M_Sphere",添加一个"VectorToRadialValue"节点,

此时预览"VectorToRadialValue"节点效果如下:

"VectorToRadialValue"节点的引脚"LinearDistance"输出结果如下

我们可以通过"Power"节点将渐变范围扩大

将材质的混合模式改为"半透明",着色模型改为"无光照"

更改一下颜色:

降低不透明度

  1. 打开之前导入的圆形静态网格体,设置材质为"M_Sphere"
  1. 新建一个actor蓝图类,这里命名为"BP_scan"

打开"BP_scan",添加一个静态网格体组件,静态网格体设置为"circle"

接下来在事件图表中添加圆形波纹从小变大的逻辑,主要通过"设置场景范围3D"节点实现:

由于是在一定时间范围内变化,就需要添加一个时间轴节点

双击打开时间轴节点,添加两个关键点,分别是(0,0)和(5,1),此时输出的Alpha就会在5秒内从0变为1

将输出的Alpha乘100,表示Alpha就会在5秒内从0变为100,从而圆形网格体就会在1秒内放大100倍

  1. 打开玩家控制的蓝图"FirstPersonCharacter"

添加一个新图表,这里命名为"扫描系统"

在新图表真牛逼添加如下节点,表示当按下1键时,会在玩家位置处生成"BP_Scan",生成"BP_Scan"后,"BP_Scan"自己会在1秒内放大100倍

此时效果如下:

可以看到扫描波纹扩散后并没有消失,我们需要在蓝图"BP_scan"中设置延迟一段时间后波纹消失

如果希望能够一次产生两次扫描效果,我们可以在角色蓝图的新图表中设置生成一次"BP_scan"后延迟0.3s再生成一次

二、制作小型冲击波效果

  1. 打开"BP_scan",添加一个球体组件

设置球体的材质同样为"M_Sphere"

在事件图表中设置球体也会被放大

设置两个静态网格体的碰撞预设均为"NoCollision"

  1. 接下来修改下"BP_scan"中球体的材质,先复制一份材质"M_Sphere"

该材质节点如下

  1. 将材质"M_Sphere_2"给到"BP_scan"的球体

对球体和圆形分别设置放大过程,在开始时设置球体可视

0.5s后设置隐藏球体

  1. 为了让球体的顶部和底部渐变消失,打开材质"M_Sphere_2",首先添加如下节点

将参数"Desity"的默认值修改为3,继续添加如下节点

为了让球体一直面对着玩家,我们需要在"BP_scan"中设置球体的旋转

效果如文章开头所示。

参考视频链接

https://www.bilibili.com/video/BV1Ty4y1P7j9/?spm_id_from=333.337.search-card.all.click&vd_source=36a3e35639c44bb339f59760641390a8

相关推荐
AA陈超8 分钟前
ASC学习笔记0004:通知相关方能力规格已被修改
c++·笔记·学习·游戏·ue5·游戏引擎·虚幻
金融小师妹3 小时前
基于多源政策信号解析与量化因子的“12月降息预期降温”重构及黄金敏感性分析
人工智能·深度学习·1024程序员节
GIS数据转换器8 小时前
基于GIS的智慧旅游调度指挥平台
运维·人工智能·物联网·无人机·旅游·1024程序员节
南方的狮子先生19 小时前
【C++】C++文件读写
java·开发语言·数据结构·c++·算法·1024程序员节
Neil今天也要学习1 天前
永磁同步电机无速度算法--基于三阶LESO的反电动势观测器
算法·1024程序员节
开开心心_Every1 天前
专业视频修复软件,简单操作效果好
学习·elasticsearch·pdf·excel·音视频·memcache·1024程序员节
liu****2 天前
16.udp_socket(三)
linux·开发语言·数据结构·c++·1024程序员节
草莓熊Lotso2 天前
《算法闯关指南:优选算法--位运算》--38.消失的两个数字
服务器·c++·算法·1024程序员节
AA陈超3 天前
虚幻引擎5 GAS开发俯视角RPG游戏 P07-11 实现自动运行
c++·游戏·ue5·游戏引擎·虚幻
unable code3 天前
攻防世界-Misc-can_has_stdio?
网络安全·ctf·misc·1024程序员节