【UE 材质】球形遮罩材质

效果

步骤

  1. 新建一个材质,这里命名为"M_Mask"

打开"M_Mask",混合模式设置为已遮罩,勾选双面显示

在材质图表中添加如下节点

此时我们将一个物体赋予材质"M_Mask"并放置在世界坐标原点,可以看到如下效果

  1. 如果我们希望能够自由移动球形遮罩的位置,则需要先创建一个材质参数集

这里命名为"MPC_Mask"

打开"MPC_Mask",添加一个向量参数,参数名称就命名为"Vector"

  1. 回到材质"M_Mask"中,搜索材质参数节点"CollectionParameter"

该材质参数节点的集就设置为"MPC_Mask",参数名设置为"Vector"

替换之前的常量节点,这里用"Mask"节点来把4维参数转换为3维(坐标)

为了控制半径,我们在材质参数中继续添加一个标量参数,命名为"Radius"

在材质中再将材质参数"Radius"连接到Radius引脚上。此时我们就可以通过这两个材质参数控制球形遮罩的位置和半径了。

  1. 新建一个Actor蓝图类,这里命名为"BP_Mask"

打开"BP_Mask",在"Construction Script"中添加如下节点来设置材质参数的值

此时我们就可以通过改变"BP_Mask"的位置来修改球形遮罩的位置了:

但是此时我们修改"BP_Mask"的缩放并不会改变遮罩范围。为了表示球形遮罩范围,我可以先添加一个球形碰撞组件,设置球体半径为256

然后将球形组件的半径大小作为变量参数值,这样我们就可以通过改变"BP_Mask"的缩放来修改遮罩范围了。

我们还可以给我们的遮罩边缘添加一些动画效果,首先给遮罩边缘添加一点扰动,其中纹理采样节点的纹理是引擎自带的"TillingNoise05"

此时效果如下

接下来给边缘添加一点颜色,首先复制一下材质图表中如下节点

最终效果如下:

相关推荐
mengzhi啊1 小时前
UE5关卡切换 传统加载(阻塞)vs流式加载(非阻塞)。还有加载关卡3种办法
ue5
电子云与长程纠缠4 小时前
UE中使用TGuardValue与TInlineComponentArray数据结构
开发语言·数据结构·学习·ue5·游戏引擎
Duo1J2 天前
【UE】Slate 编辑器工具开发03 - 节点编辑器 (EdGraph)
ue5·编辑器·游戏引擎·ue4
directx3d_beginner3 天前
26,怪物受击接口改为C++
ue5
法雅特吉他3 天前
吉他弦寿命模型与更换判定
经验分享·新媒体运营·学习方法·材质·内容运营
法雅特吉他4 天前
吉他日常保养完全指南:从环境参数到部位养护的系统化方案
大数据·经验分享·新媒体运营·学习方法·材质
远离UE45 天前
UE5 UV邻接 Niagara潜水模拟 学习笔记
ue5·uv
AA陈超6 天前
005 T03 — 角色基类与移动系统 详细功能设计文档
ue5
AA陈超6 天前
004 T02 - 俯视角摄像机系统 设计文档
网络·c++·ue5·虚幻引擎
AA陈超6 天前
006 T03 — 蓝图操作指南
c++·游戏·架构·ue5·github·虚幻引擎