版权声明:本文为CSDN博主「a1406215966」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
材质基础节点
Saturate
此节点就是特殊版本的 Clamp,夹断在 0-1 之间,它的作用或者优势是:性能消耗比 Clamp 小,几乎没有性能消耗。
官方文档地址: 数学表达式.
DepthFade
此节点多用于不透明通道,实现半透明与不透明材质对象之间相交时的透明度平滑过渡,效果如下图:左球使用了此节点,右球未使用。
官方文档地址: DepthFade.
Frac
输出输入值的小数点部分:1.2 输出 0.2。
BlendMaterialAttributes
此节点代表材质末梢节点,也就是新建一个材质打开后那个默认节点,可配合 break 使用,以混合不同材质
Custom
此节点用于输入 C++ 代码。
蓝图基础节点
Interp
此类节点只能使用在 TickEvent 中。实现 Float、Vector、Rotater 型数据的动态过渡
使用方法如下图所示:下图利用此节点实现根据摄像机距离动态改变材质参数,过渡速度通过 Interp Speed 控制。
上边
Tick接Interp函数,用来做一个平滑过渡的值,这个值代表了一个从当前值到目标值的过渡,然后还有速度,当前值就是Target Arm Length,目标值新建一个变量(名为Camera Target),初始值和默认的Target Arm Length一样。下边鼠标滚轮事件,修改
Interp目标值(Camera Target),如果当前Target Arm Length为 300,那么滚轮往上,值减去 100,变成了 200,在Tick那边(的FInterpTo)就是,Target Arm Length的 300 的值,过渡到Camera Target的 200,速度为 5 。这样实现了从 300 到 200 的平滑过渡(通过Interp函数)。
材质功能记录和编写
RemapValueRange
此节点用于数值映射。 节点说明翻译:通用重映射函数,将一个输入范围的值映射到一个输出范围的值(Generalized remapping function to explicitly remap an input range to an output range.)
FlattenNormal
此节点用于控制法线贴图强度
Gradient
在材质中搜索上述名字,出现一系列黑白 mask 类型,有 星星mask,圆形mask 等
RadialGradientExponential
SphereGradient-3D
DiamondGradient
LinearGradient
CustomRotator
此函数实现 UV 的旋转,默认为绕 UV 中心旋转,此节点非实时旋转
EdgeBlackMask(自编)
此节点的输出贴图如下:实现一张边框白,里面黑色的图,可以用作半透明 Box 带边框效果的发光 Mask
节点连接方式如下:
WhiteBlackWhite(自编)
此节点输出效果如下:实现一张中间黑两边渐变成白色的贴图。
应用在模型上效果,可用于样条线类模型使用
节点连接方式如下:如果只需要制作一张从黑色到白色的渐变贴图,只需要从 Texcood 连出 Mask (R) 或者 Mask (G) 即可,用 1-x 进行反向
OutputFloatbyDistance(自编)
此材质功能实现:在场景中动态根据摄像机与对象的距离映射到指定 Float 值范围,多用于根据距离渐隐渐现半透明对象。
节点链接方式如下:
用途范例
结合 WorldPositionOffset 使用:实现基于视角远近的模型整体偏移。
图2 中使用的 BOX 是系统自带模型,在视角高度高于模型时,模型顶点整体发生了偏移。
InteriorCubemap
此节点用于连接室内 Cubemap,从而模拟从窗外看室内效果更加真实
下图节点释义硬翻:
内部 Cubemap 符合 Cubemap 的形式,从表面 UV 中插入一个盒形。 这对于通过城市建筑的窗户看到的房间提供视差是有用的。
从 HDR 下载网站下载 .HDR 格式图片导入 UE4,材质连接方式如下图所示:
将材质实例贴到窗户内的 plane 上,调整相应参数至最优,效果如下图所示:相机运动起来也可以模拟不同角度的视差
PostProcessOutLine
先按照如下图连接材质,材质类型改成后处理模式,并将材质属性中的这个选项改为 “Before Tonemapping”
在后处理中添加此材质即可使用。
第二张图那个绿框的 1-x:
不连接它:则场景在 Blendweight 为 0 时,只有启用了 customDepth 选项的非透明材质模型才有描边。
连接它:则场景在 Blendweight 为 0 时,启用了 customDepth 选项的非透明材质模型没有描边,其余场景模型均有描边。
在下图处连接上其他 RGB 值或用 Lerp 混合原有节点和一个 RGB,则会出现场景颜色叠加效果
Sprite(3D 面向屏幕)
节点连接方式如下:实现面片始终面向屏幕,并根据相机距离缩放面片,使其在屏幕中占像素数量不变。(缩放模型改变整体大小)。