【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"

此时效果如下

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

最终效果如下:

相关推荐
m0_552200821 天前
《UE5_C++多人TPS完整教程》学习笔记48 ——《P49 瞄准偏移(Aim Offset)》
c++·游戏·ue5
m0_552200822 天前
《UE5_C++多人TPS完整教程》学习笔记49 ——《P50 应用瞄准偏移(Applying Aim Offset)》
c++·游戏·ue5
m0_552200822 天前
《UE5_C++多人TPS完整教程》学习笔记50 ——《P51 多人游戏中的俯仰角(Pitch in Multiplayer)》
c++·游戏·ue5
CandyU22 天前
UE5 基础应用 —— 09 - 展示类小项目
ue5
vonlycn2 天前
UE5 性能优化(1) 模型合并,材质合并
ue5·材质
ue星空3 天前
月2期学习笔记
学习·游戏·ue5
曼巴UE53 天前
UE5 制作游戏框架的部分经验积累(持续更新)
游戏·ue5
CandyU24 天前
UE5 基础应用 —— 10 - 控制台命令
ue5
平行云7 天前
Paraverse平行云实时云渲染助力第82届威尼斯电影节XR沉浸式体验
unity·云原生·ue5·xr·实时云渲染
一眼万里*e7 天前
用ai写了个UE5插件
c++·ue5