UE4_材质节点_有关距离的_流体模拟

一、材质节点介绍:

特别注意:距离场需要独立显卡支持。

1、什么是距离场?

想象一下空间中只有两个实体, 一个球,一个圆柱.

空间由无数个点组成, 取其中任何一个点, 比如,它跟球面的最近距离 是3, 跟圆柱面的最近距离是2, 那么这个点的值就是2. 空间中所有的点都按照这个方法取值, 就形成了一个标量场, 称为距离场.

距离场计算出来以后, 能够得到场中任何一个点跟所有参考物体 (比如上例中的球和圆柱)之间的最近距离.

如果距离场的值表现为图像的明度, 它的视觉印象是一个个由参考物体分割出来的渐变区域.

2、距离场的开启

点击 主(Main) 菜单上的 编辑(Edit) 并选择 项目设置(Project Settings) 将其打开。

点击 渲染(Rendering)> 软件光线追踪(Software Ray Tracing) ,可找到用于调整网格体距离场的设置。

3、距离场的查看

4、DistanceToNearestSurface( 与最近表面的距离**)蓝图节点**

节点尝试理解:

根据理解与最近表面的距离获取的应该是个标量,我们除以一个值,使渐变区域变大以观察效果。

把这个材质赋予场景中的平面,这样平面上的自发光颜色根据这个距离除以100进行发光。

这样我们就理解了这个节点了,获取到的是物体上每个像素点到最近物体表面的距离。为了验证我们在添加一个物体看看效果:

在此示例中,DistanceToNearestSurface输送到材质上的"不透明"(Opacity)输入,而该材质应用于放在关卡地板正上方的"静态网格"平面。 DistanceToNearestSurface的作用是告诉材质,"静态网格"平面仅从红色区域开始与场景中的其他"静态网格"相交。

5、DistanceFieldGradient(距离场梯度)蓝图节点

距离场梯度(DistanceFieldGradient) 材质表达式节点进行规范化(normalize)后,将输出对象在距离场中的X,Y,Z移动方向。方向是从物体到材质物体的方向。 这使DistanceFieldGradient材质表达式节点非常适合于需要模拟液体流的材质。

材质节点尝试:

半透明材质渲染距离场是有问题的:

换成不透明材质效果如下:

为了看清楚效果,自发光乘以一个数值。

看另一个效果:

再看另一个效果:

看完你会发现还是规范化省事,并且这个节点是既带有方向又带有距离的。

这里是在材质中使用 DistanceFieldGradient 材质表达式的示例。 在此示例中,请务必注意,DistanceFieldGradient首先进行规范化,然后输入到"Mask Channel节点。 这样做的原因是,如果不首先对DistanceFieldGradient进行规范化,您将无法获得方向性数据。 为了方便在材质实例中进行RGB通道切换,添加了"遮罩通道"(Mask Channel)参数。

以下是作用中的DistanceFieldGradient示例。 下图显示启用各种RGB后DistanceFieldGradient将会使用的数据。

6、材质上的参数:世界场景位置偏移

允许通过材质在世界空间中操纵网格体顶点。

尝试1:

发现使用这个材质的物体在Z轴上移动了100单位。

尝试2:

尝试三:

尝试四:

变成一个点了。

尝试5:

变成一个圆了。

相关推荐
da_vinci_x18 小时前
Substance 3D 材质流:AI 快速生成与程序化精修
人工智能·游戏·3d·材质·设计师·技术美术·游戏美术
da_vinci_x3 天前
Painter AI 材质 x 智能遮罩:告别“风格化”手K地狱
人工智能·aigc·材质·设计师·技术美术·工作流·游戏美术
CG_MAGIC3 天前
3ds Max材质高清参数设置:10分钟提升渲染真实感
3d·vr·3dmax·材质·vray·渲云渲染
云卓SKYDROID5 天前
无人机探测器技术要点解析
人工智能·无人机·材质·高科技·云卓科技
我救我自己6 天前
UE5.6 玻璃材质——Lumen
ue5·材质
DvLee10247 天前
UnityGLTF 材质创建与赋值流程
unity·材质
njsgcs7 天前
tekla python 获取所有材质信息 截面类型
材质
小喵要摸鱼9 天前
衣服面料材质宝典
材质
zhangzhangkeji12 天前
UE5 材质-17:水材质系列一 ,panner 平移节点,
ue5·材质
患得患失94912 天前
【threejs】材质共享导致的典型问题
材质·threejs