LandscapeLayerBlend(景观层混合)
LandscapeLayerBlend 节点可将多个纹理和材质网络混合在一起,以便作为地形图层使用。LandscapeLayerBlend 使用阵列存储地形图层的相关信息。点击“0 elements”旁的加号图标即可为此阵列添加图层。
为 LandscapeLayerBlend 节点添加多个图层后,得到的效果如下图所示。
可在 材质编辑器 Details 面板中设置 LandscapeLayerBlend 节点的属性。
数字 | 属性 | 描述 |
---|---|---|
1: | Layers | 节点包含的图层列表。点击加号图标即可添加图层 ()。 |
2: | Layer Name | 为图层赋予的单独命名。Layer Name 对应地形工具窗口中 绘制模式 使用的图层名。 |
3: | Blend Type | 为 LB_AlphaBlend、LB_HeightBlend、或 LB_WeightBlend。本页后部有详细说明。 |
4: | Preview Weight | 作为图层的权重值,用于预览材质编辑器中的混合。 |
5: | Const Layer Input | 如不使用纹理,该属性可提供作为颜色使用的数字值。主要用于图层出现问题时的调试。 |
6: | Const Height Input | 如不使用纹理,该属性可提供作为高度的数字值。 |
7: | Additional Layers | 图层重叠时额外图层的外观。 |
下表详细说明 Layer Blend 节点 的输入和输出。
数字 | 项目 | 描述 |
---|---|---|
1: | Layer LayerName | 每个图层均为添加输入,以便图层混合。图层被加入 Details 面板前,这些输入均不可用。 |
2: | Height LayerName | 在此提供用于混合的高度图。请注意:该输入只在 Blend Type 属性设为 LB_HeightBlend 的图层上可见。 |
3: | Unlabeled Output | 图层混合的结果。 |
使用图层混合模式的特定组合时,地形上图层交界处可能出现黑块。为多个地形图层使用 LB_HeightBlend 模式时该问题尤为普遍。LB_HeightBlend 为使用特定高度值的图层调制混合因子和权重。在一个区域上绘制多个设为 LB_HeightBlend 的图层时,在特定区域进行绘制的全部图层可能同时获得为 0 的高度值,因此每个图层所需的混合因子为 0。因不存在隐式或显式的排序,结果将为黑块(因为没有图层为该区域贡献内容)。进行法线贴图的混合时情况会更糟糕,因其将产生(0,0,0)的无效法线值,并引起灯光的渲染问题。此问题的解决方法是为其中一个图层使用 LB_AlphaBlend,如下例所示。
在左图中,所有的图层均为 LB_HeightBlend,引起了黑块问题。在右图中,红色的“1”图层改用 LB_AlphaBlend,问题即得到解决。
下图是 Landscape Layer Blend 节点(将数个图层混合的节点)属性的范例。注意:Soil 图层的混合模式设为 LB_AlphaBlend,而其他图层设为 LB_HeightBlend。此操作可防止以上问题(图层交界处出现黑块)的发生。
删除图层的方法为:点击图层元素数量右边的下拉箭头打开快捷菜单,然后点击 Delete。
LandscapeLayerCoords(景观层坐标)
LandscapeLayerCoords 节点生成 UV 坐标,该坐标可将材质网络映射到地形地貌上。
可在 Details 面板中设置 LandscapeLayerCoords 节点的属性。
数字 | 属性 | 描述 |
---|---|---|
1: | Mapping Type | ELandscapeCoordMappingType 指定将材质(或网络)映射到地形所使用的朝向。 |
2: | Custom UVType | 地形上使用的映射位置。CustomUVType 基于特定的属性值输出 UV 坐标,将材质映射到地形上。 |
3: | Mapping Scale | 应用到 UV 坐标的均匀缩放。 |
4: | Mapping Rotation | 应用到 UV 坐标的旋转(以度为单位)。 |
5: | Mapping Pan [U] | 应用到 UV 坐标的 [U] 方向偏移。 |
6: | Mapping Pan [V] | 应用到 UV 坐标的 [V] 方向偏移。 |
7: | Unlabeled Output | 基于特定的属性值输出 UV 坐标,将材质映射到地形上。 |
LandscapeLayerSwitch(景观层开关)
特定图层对地形中的一个区域不起作用时,LandscapeLayerSwitch 节点可将部分材质操作排除。特定图层权重为零时此节点可将不必要的计算移除,实现对材质的优化。
可在 Details 面板中设置 LandscapeLayerSwitch 节点的属性。
数字 | 属性 | 描述 |
---|---|---|
1: | Parameter Name | 为参数赋予的单独命名。 |
2: | Preview Used | 勾选后将使用预览。 |
3: | LayerUsed | 地形当前区域调用节点属性中指定图层时所使用的结果。 |
4: | LayerNotUsed | 地形当前区域不调用图层且权重为零时所使用的结果。 |
5: | Unlabeled Output | LayerUsed 或 LayerNotUsed 输入,取决于图层是否对地形的特定区域产生作用。 |
LandscapeLayerWeight(景观层权重)
LandscapeLayerWeight 表现允许材质网络进行混合。混合的基础是从材质应用的地形上所获取的相关图层权重。
可在 Details 面板中设置 LandscapeLayerWeight 节点的属性。
数字 | 属性 | 描述 |
---|---|---|
1: | Parameter Name | 与该表现相关的地形的图层名。此图层的权重用作混合两个输入网络的透明度数值。 |
2: | Preview Weight | 在材质编辑器中用于预览的权重。 |
3: | Const Base | 可在此为地形指定一个基础颜色。 |
4: | Base | 与此图层进行混合的网络。它是之前图层混合的结果。如为首个图层,则可为空。 |
5: | Layer | 进行混合而创建此图层的网络。 |
6: | Unlabeled Output | 基于相关图层的权重在 Base 和 Layer 输入之间输出混合结果。 |
LandscapeVisibilityMask(景观可见性蒙版)
LandscapeVisibilityMask 节点用于移除部分地形的可见性,以便创建类似洞窟的洞穴地形。
可在 Details 面板中设置 LandscapeVisibilityMask 节点的属性。
数字 | 属性 | 描述 |
---|---|---|
1: | Unlabeled Output | 输出可见性遮罩属性。 |
使此节点正常工作的方法为:将其输出连接至材质的 Opacity Mask 槽,并将 Materials Blend Mode 设为 Masked。