Unreal4材质表达式向量表达式类节点讲解0016

向量表达输出矢量值(例如位置或法线)的表达式。

在此页面中,您将找到可用的矢量表达式,这些矢量表达式输出映射到RGBA的矢量值。这些可以用于创建材料的各种不同效果,例如获得对象在世界空间中的位置,以便材料在进入特定区域时可以对角色产生反应或转换颜色。还有许多其他功能可以使您控制空间局部样式的材质效果,您可以查看以下示例以了解更多信息。

ActorPositionWS

ActorPositionWS输出Vector3(RGB)数据,该数据表示对象在此对象上在世界空间中的位置。
在此示例中,您可以看到ActorPositionWS被直接输入到材质的基础颜色中。结果,当将每个球体移动到3D空间中的不同位置时,其上应用了材质的每个球体都会显示不同的颜色。请注意,ActorPositionWS节点的结果被1600除以创建漂亮的混合颜色,而不是流行色。

CameraPositionWS

所述CameraWorldPosition表达输出表示该相机在世界空间中的位置的三信道向量的值。

预览球随着相机旋转而改变颜色。

CameraVectorWS

所述CameraVector表达输出表示摄像机的方向相对于所述表面上的三信道矢量值,换句话说,从象素向摄像机的方向。


用法示例:通过将CameraVector连接到ComponentMask,并将CameraVector的x和y通道用作纹理坐标,经常使用CameraVector来伪造环境地图。

Constant2Vector

所述Constant2Vector表达式输出的双信道向量的值,换言之,两个常数。您可以通过按住2键并在“材质编辑器”的图形区域中单击鼠标左键来快速创建Constant2Vector节点。

示例:(0.4、0.6),(1.05,-0.3)
用法示例: Constant2Vector对于修改纹理坐标非常有用,因为它们也是两个通道的值。

Constant3Vector

所述Constant3Vector表达式输出的三通道矢量值,换句话说,三个常数号码。RGB颜色可以认为是Constant3Vector,其中每个通道都分配有一种颜色(红色,绿色,蓝色)。示例:(0.4、0.6、0.0),(1.05,-0.3、0.3)
您可以通过按住3键并在“材质编辑器”的图形区域中单击鼠标左键来快速创建Constant3Vector节点。

Constant4Vector

所述Constant4Vector表达式输出一个四信道向量的值,换句话说,四个常数号码。RGBA颜色可以认为是Constant4Vector,其中每个通道都分配有一种颜色(红色,绿色,蓝色,alpha)。示例:(0.4、0.6、0.0、1.0),(1.05,-0.3、0.3、0.5)
您可以通过按住4键并在“材质编辑器”的图形区域中单击鼠标左键来快速创建Constant4Vector节点。

LIghtVector光矢量

由于现在推迟了光照计算,因此在虚幻引擎4中不推荐使用此表达式。

ObjectBounds对象边界

“对象边界”表达式输出每个轴上对象的大小。如果用作颜色,则X,Y和Z轴分别对应于R,G和B。
在上面的示例中,您可以看到对象的颜色与对象的最长轴相对应。

ObjectOrientation面向对象

所述ObjectOrientation表达式输出世界空间构成对象的矢量。换句话说,对象的局部正z轴指向该方向。

ObjectPositionWS对象位置WS

所述ObjectPositionWS表达式输出中对象边界的世界空间的中心位置。例如,这对于创建树叶的球形照明很有用。

ParticlePositionWS粒子位置WS

所述ParticlePositionWS表示每个单独的颗粒在世界空间中的位置表达的Vector3输出(RGB)数据。
在此图像中,ParticlePositionWS被馈入发光颜色以可视化数据。粒子系统已按比例放大,以显示颜色如何根据位置变化。

PixelNormalWS

所述PixelNormalWS表示像素被基于当前正常面对的方向表达输出矢量数据。
在此示例中,PixelNormalWS被送入基础色。请注意,如何使用法线贴图来给出每个像素的结果。

Pre-Skinned Local Normal局部皮肤法线

所述预剥皮本地法线矢量表示输出表示局部表面法线为骨架和静态网格的三信道向量的值。这使您能够在材料中实现局部对齐的三平面材料和网格对齐效果。

在此示例中,材料使用与网格的局部表面法线对齐的三平面纹理。
PreSkinnedTriPlanar.gif三平面预蒙皮局部法线向量表达式

TriPlanarMaterial.gif三平面材料

预先剥皮的本地位置

所述预剥皮本地位置矢量表示输出三通道矢量值,该值可以访问一个骨架网格的默认姿态的位置数据以用于每顶点输出。这使您可以对动画角色具有本地化的效果。此向量表达式也可以与“静态网格物体”一起使用,该静态网格物体将返回标准局部位置。

在此示例中,“骨骼网格”的默认姿势用于映射,而右侧使用默认的UV映射。


PS_LocalPositionMaterial.gif预先皮肤化的局部位置向量表达式

PS_DefaultMaterial.gif骨架网格物体的默认UV布局

ReflectionVectorWS反射全局空间矢量

所述ReflectionVectorWS表达在本质上类似CameraVectorWS ,但它输出表示在表面上反射的正常照相机方向的三信道向量的值。

用法示例: ReflectionVector通常用于环境贴图中,其中反射矢量的x / y分量用作UV进入立方体贴图纹理。

VertexNormalWS全局顶点法线

所述VertexNormalWS表达式输出世界空间顶点法线。它只能用于在顶点着色器中执行的材质输入,例如WorldPositionOffset。这对于使网格增长或缩小非常有用。请注意,沿法线的偏移位置将导致几何图形沿UV接缝分裂。
在上面的示例中,预览球似乎会随着正弦曲线运动而上下缩放,因为每个顶点都沿其各自的法线方向移动。

矢量噪声

“矢量噪声材质”表达式添加了更多的3D或4D矢量噪声结果,供您在“材质”中使用。由于这些函数的运行时开销,建议使用它们开发外观后,建议使用 虚幻引擎4.13及更高版本中引入的“绘制材质以渲染目标蓝图”功能将所有或部分计算结果烘焙到“纹理”中。。这些材料图表达式允许在引擎中针对最终资产开发程序外观,从而提供了一种替代方法,可以使用外部工具创建程序生成的纹理,以将其应用于UE4中的资产。在矢量噪声材质表达式的内部,可以找到以下矢量噪声类型。




下面是一种简单的石床材料,它使用Vector Noise / Voronoi的距离分量来调制一些表面凹凸并融合到裂缝中的苔藓中,并将种子位置与Vector Noise / Cellnoise结合在一起以更改每个岩石的颜色和凹凸高度。
可以将基于导数的运算Perlin Curl和Perlin Gradient一起加倍频程,就像常规的Perlin杂音一样。对于更复杂的表达式的导数,有必要计算表达式结果的梯度。为了解决这个问题,请将要计算的表达式放入“材质函数”中,并将其与以下辅助节点一起使用。
这些辅助材料函数使用以四面体模式隔开的基本表达式的四个求值来近似这些基于导数的运算。

矢量噪声材料表达式中各种噪声函数的描述。
单元噪声材料示例:
Perlin渐变 材质示例:
Voronoi 材料示例:

你可能感兴趣的:(Unreal4材质表达式向量表达式类节点讲解0016)