UE4基础学习笔记——— 材质编辑器03

材质函数

原理:需要重复使用一组节点的功能或者计算,将其预先打包,以方便在本材质或其他材质内重复调用,保证了界面的简洁和可读性。

 

引擎自带的材质函数

控制板下选择  函数类型(functions)。节点颜色蓝色。双击可查看其内部节点构成。

  

 

创建材质函数案例

制作一个在Z轴上融合材质的效果。

思路:普通混合利用lerp节点。这里需要的Lerp中的Alpha是物体表面顶点法线在Z轴向上的信息,并可以控制该信息,方便材质实例化时调节。

1.在项目浏览器中创建,并以MF_开头命名。

  

2.

VertexNormalWS获取对象在世界空间中的顶点法线信息,使用分量蒙版(ComponentMask获取其B(对应Z轴)通道信息。

使用幂函数(Power)信息放大,将其参数化并命名方便后期材质参数调整。加入Multiply函数做整体强度调整

加入限制函数(Clamp)将其最大最小范围进行限定。否则出现数值过曝。

 过曝  添加入Clamp节点

不再过曝

3.材质函数的调用一、直接冲内容浏览器中拖入。 二、将其设置为  库中显示 ,即可通过右键添加该函数。

 调用材质函数,之前的参数化使得调节alpha变得容易。

4.注意物体旋转后,物体顶点位置变化,它的材质也会变化。但始终是以顶点法线在Z轴方向为依据。

材质函数添加输入输出

将需要作为输入的调用Input in节点,选择其输入类型

   

添加输出:调用Output函数。

 

 

材质图层(分层材质)

原理:其实就是材质的嵌套,可以将分层材质想像成“材质内的材质”。把整个材质做成一个可以调用的节点本质也是材质函数

仍然使用上方草地木头材质,将其优化。把每个材质做成分层材质。

原始

1、调用Make Material Attributes(建立材质属性)节点。

2、调用新建的分层材质。材质的混合使用BlendMaterialAttribute节点(功能类似Lerp)。 改变材质结果节点

 

猜你喜欢

转载自blog.csdn.net/Milow88/article/details/105506961