风格化渲染地形

虚幻引擎4风格化渲染示例中的地形效果概述。

Choose your operating system:

Windows

macOS

Linux

参见

StylizedTerrain.png

地形是此示例中较为显著的关卡特性之一。地形主要通过地形材质来处理,因此它的着色非常卡通化。有关地形的设置和创建信息,请参阅 地形文档

应用于此地形的材质比较有技术性。初学者可能会觉得它有些过于复杂。

大多数为此场景创建的材质实际上都通过一个 材质实例常量 应用。你可以借此快速进行属性调整和修改,无需等候材质完成重编译。

首先,你需要打开材质编辑器中的材质,以便查看需要使用的材质表达式。请按照以下步骤操作:

  1. 内容浏览器(Content Browser) 中,搜索并找到 M_Terrain_Gound_A 材质。你需要确认查找的是资产树中的 游戏(Game) 文件夹。 把筛选器设置为仅显示材质可能也会有帮助。

    M_Terrain_GroundCB.png

  2. 双击此材质从而在材质编辑器中打开它。

你可以立即看到材质被分为一组注释块,如下图:

DistanceColorizeComment.png

它们用于帮助显示材质表达式网络的关键区域执行的功能。以下是详细介绍:

  • 岩石和草散布(Rock and Grass Diffuse) - 处理石头和草纹理间的混合以及它们如何被放置在地形表面上。

  • 控制岩石散布的高度混合(Controls height blend of Rock Diffuse) - 此部分执行对表面的角度检查,这是我们在斜坡上也能有平坦的草坪和岩石纹理的原因。

  • 路径散布(Path Diffuse) - 它覆盖地形顶部的步行路径纹理。

  • 沙滩颜色和蒙板(Beach color and Mask) - 它负责辅助指定海水与陆地交汇处的沙滩区域。

  • 斑点(Splotches) - 这个区域取入蒙板纹理并逐通道进行平铺,然后使用它沿着地形创建随机的颜色斑点。

  • 距离上色(Distance Colorize) - 你可能注意到了当远离地形时,它变成了单个昏暗、模糊的颜色。此部分材质创建了这种转换效果。

岩石和草混合

此材质基于塑造地形时的地形表面角度在两种最终外观间进行混合。这表示更为平坦的区域将会被绘制的草纹理覆盖,同时所有具有斜坡的表面将会有岩崖纹理。纹理效果如下图所示。

GrassColor.png

RockCliff.png

GrassBlendResult.png

悬崖

效果

这种混合机制的关键在 世界对齐混合(World_Aligned_Blend) 材质函数内,你可以在 控制高度混合(Controls height blend) 注释框内找到它。此函数采用向量并将其与世界空间表面法线相比较。这个函数提供范围为0-1alpha的输出值,0代表垂直向量,而1代表平行向量。换句话说,当你把Z轴的 (0,0,1) 作为 世界中向量(In World Vector) 值使用时,它会输出黑白纹理,白色代表平面,而黑色代表斜坡。这个值可以被偏移和锐化,从而在不同alpha值之间的获得清晰的线条。

在下方的示例中,我们使用世界对齐混合(World Aligned Blend)在红色和蓝色间插值。 你可以查看材质网络,详细了解如何进行混合。请注意:我们添加了一些锐化效果,这样可以让最终效果更为明显。

WorldAlignedBlendNetwork.png

InWorldVector.png

SurfaceComparison.png

Result.png

世界中的向量

世界表面法线 - 黄色的为Alpha输出

最终结果

你或许也注意到了在岩石和草之间有轮廓线,可以帮助定义不同表面间的分割。这是通过进行两个世界对齐混合(World_Aligned_Blend)操作来创建的,并使用更为紧密的偏移。第一个操作在岩石纹理间混合,并使用棕色轮廓线。第二个操作在第一个操作和草颜色的最终结果间混合。

OutlineExample.png

下图是一个简化的示例,其中我们使用红色、绿色和蓝色的混合来创建类似的轮廓。

OutlineBlendResult.png

最终结果

节点网络(点击查看大图)

地貌样条曲线

走道和横穿海面的海岸线是使用地貌样条曲线来创建的。如需创建地形中的道路、小路以及其他符合地形表面的资产类型,地貌样条曲线是极佳的方法。

Walkway.png

如需获得更多信息,请参阅 地貌样条曲线文档

欢迎帮助改进虚幻引擎文档!请告诉我们该如何更好地为您服务。
填写问卷调查
取消