UE4_材质_世界场景位置偏移_角色擦除效果

一、粗糙效果展示:

二、擦除效果制作步骤:

1、拖拽角色到场景中,新建材质,赋予角色。

2、通过世界场景位置偏移来做擦掉的效果。

通过材质来操纵网格体顶点的偏移,物体的坐标原点没变,但是网格体已经按照顶点在世界场景中的位置按照相反的方向归到(0,0,0)了。

3、我们来验证一下一个方向上的归0,如图:

看见地上被拍扁的角色了吗?。为了能看清楚,我移动下地面。如图:

有兴趣的同学可以在其它两个方向上尝试一下.

4、为了擦除效果有过渡,我们首先来回顾下spheremark球体遮罩。

球体遮罩(SphereMask) 表达式根据距离计算来输出遮罩值。如果某一个输出是某个点的位置,而另一输入是具有某半径的球体的中心,那么遮罩值将是0(位于球体外部)和1(位于球体内部),并存在一定的过渡区域。此表达式可作用于单分量、双分量、三分量和四分量向量。

项目 说明
属性
衰减半径(Attenuation Radius) 指定用于距离计算的半径。
硬度百分比(Hardness Percent) 指定过渡区域大小。此项目类似于Photoshop的笔刷硬度值。0表示硬过渡,100表示最大化过渡区域(软过渡)。
输入
A 接收一个值,该值代表要检查的点的位置。
B 接收一个值,该值代表球体中心。

5、尝试使用下spheremask。

为了能够调节参数观察效果,需要生成材质实例,重新赋予角色。调节参数,看下效果:

我们在角色身上就得到了一个变化的选区。

要注意的是这里的actor的位置不是网格体脚下的位置

实际上大家可以这样思考,actor位置是确定的,半径是确定的,那么哪些像素是发光的不就确定了吗?球内的为1,所以说离actor位置坐标的距离为wipeRadius的像素点都应该是球内的,都是发光的。

6、我们可以调整下选区的中心位置

只要让监测点actor位置在Z轴向上下降人体高度的一半就可以了。如图:

成功完成了选区的控制。

还有一种省事的调整选区中心的办法,感觉更好:

7、我们让选区控制擦除的范围

效果:

我们找了一个球放在原点,发现确实被擦除到了原点。

8、我们可以把(0,0,0)提升为变量用于控制擦除位置。

调整如下图:

效果如下图:

8、为了把擦除的隐藏,我们可以使用擦除的选区来做一下不透明度。

这里不透明度参数节点不可用,我们需要修改材质域为已遮罩。

相关推荐
mxwin17 小时前
Unity ShaderLab 完全指南深入了解 Unity 特有的声明式语法,用于定义材质面板、渲染回退、细节层次等核心功能
unity·游戏引擎·材质·shader
阿拉丁的梦1 天前
blender材质操作-快速融合 node wrangler
材质
Zhichao_977 天前
【UE UMG 材质】虚线框
ue5·材质
da_vinci_x12 天前
告别“塑料机甲”:Plasticity的次世代硬表面磨损与自定义贴花工作流
游戏·3d·aigc·材质·技术美术·游戏策划·游戏美术
da_vinci_x12 天前
告别“纸片树冠”:SpeedTree 10的次世代 Nanite 植被透射与程序化季相重构工作流
游戏·3d·重构·aigc·材质·技术美术·游戏策划
恪愚13 天前
three | 材质 Material
前端·javascript·材质
每天回答3个问题13 天前
leetcodeHot100|148.排序链表
数据结构·c++·链表·ue4
a11177613 天前
Elven Girl Belle - UE4/UE5 角色资源(附下载链接)
ue5·ue4
Kang.Charles14 天前
UE4 C++将Json数据写入目标字符串
c++·json·ue4
mojugang1 个月前
DC53是什么材质
材质·模具钢