艺术家Son Nguyen为大家分享使用UE4、SpeedTree、Maya、ZBrush、Substance等软件创建丛林环境场景的过程,并具体介绍在SpeedTree中的工作流程。

使用UE4和SpeedTree制作丛林场景
使用UE4和SpeedTree制作丛林场景


01
前期制作


一旦开始新项目,首先需要设定目标与计划表,然后了解如何将计划表用于资产创建工作流程,并使用软件(Maya、ZBrush、Substance Suite、SpeedTree 和 Photoshop)创建树叶,在创建过程中减少使用外部资源。项目中除了从 Quixel 的 Megascans获得的一些资产外,其他都是自己创造的。

在国家地理和Mongabay信息网站中研究热带雨林的生态热带雨林的大多数分为四层:紧急层、树冠层、林下层和森林地层。每一层都相互依存,并根据水、阳光和空气循环具有其独特的特征。让我了解到雨林的组成,树叶的外观特征。例如林下的植物通常有深色的底面、颜色更深的叶子,由于这一层光线不足,叶子比仅几米以上的冠层植物更大。真正的灌木是阴凉的,只有零星的藤蔓和灌木存在。该信息有助于根据雨林的特征更准确地创建和分散树叶资产,但将环境艺术推向现实主义会限制艺术家的创作自由。在任何情况下,在现实和艺术方面之间总会有一些不可避免的权衡。就我而言,只强调森林的印象,而不是真正的森林。我们通常寻求的是完全沉浸在一个充满美学想象力的世界中,而不是被静物照片包围。

使用UE4和SpeedTree制作丛林场景



02
场景参考


项目“The Guardians of the Light”的目的给大家留下一些可以解决的问题。为什么普通的森林里会有一棵形状怪异的神秘树?之前有人发现过这座寺庙吗?神社的目的是什么?最终目标是激发玩家对寺庙内神殿隐藏和保护的东西的好奇心。

使用UE4和SpeedTree制作丛林场景
使用UE4和SpeedTree制作丛林场景
寻找一段想要表达的感觉的音乐古斯塔沃·桑托拉拉 (Gustavo Santaolalla) 的 The Last of Us),它描述了一种沉重的神秘感,伴随着乐观与危险,与项目的主题完美契合即使不打算制作视频,但可以将摄影与音乐一起可视化,因此可以绘制出富有想象力的作品。
使用UE4和SpeedTree制作丛林场景
使用Tim Simpson的方法来收集参考资料,将参考照片分为三大类,包括关键、闪电和AAA基准。参考AAA基准可以将艺术品质量与行业标准进行比较,以便了解应该达到的质量。还创建另一个板,其中包括不同的动画电影背景和游戏概念艺术。参考Ghibli电影中的图像和顽皮狗工作室Uncharted 4: A Thief End的概念艺术。这可以研究它们的构图、照明或配色方案,甚至从不同作品中借用一些元素来制作自己的作品。
使用UE4和SpeedTree制作丛林场景
为了对树叶进行更具体的处理,收集各种植物的参考照片。然后根据种类和层数在PureRef中分类到不同的区域中,森林的每一层上要有至少一两株植物。这座寺庙并不是围绕建筑和历史的准确性而开发的,我想给它一个独特的外观,所以收集了不同类型的建筑,比如柬埔寨遗址,或者印度岩石寺庙。狐狸雕像参考了日本寺庙中的稻荷神社。
使用UE4和SpeedTree制作丛林场景


03
场景设置


使用UE4的景观雕刻工具和Maya的占位符来遮挡场景,可以快速迭代以获得场景的动态构图,并估计需要创建的资产。组成这些占位符并移动东西,使用构建套件替换占位符,在需要时进行调整。

使用UE4和SpeedTree制作丛林场景
在初始阶段中设置主材质,这个初始设置可以调整不同的材质属性,还能够在使用分离纹理和打包纹理之间切换。
使用UE4和SpeedTree制作丛林场景
将节点的功能组组装到不同的材料函数中,以获得可组织且易于理解的图形。除了避免将图形变成一盘杂项外,后续阶段在这些基本函数之上分别添加且相当直观的顺序函数。例如通过这种方式添加一个非常方便的苔藓覆盖系统,可以在一些物体(如岩石、墙壁和雕像)的顶部生成苔藓。压缩成一个材质函数,然后在完成顶点混合功能设置后立即添加到主材质中。
使用UE4和SpeedTree制作丛林场景
通过初始设置和封锁,推进资产创建阶段。
使用UE4和SpeedTree制作丛林场景


04
树叶和植被


树叶工作流程源于Peyton Varney的演练。从Maya 创建基础叶子网格,然后将它们导入ZBrush进行雕刻。在 ZBrush 中我使用2048 x 2048的文档大小。然后将基础网格划分为两个或三个细分,从大形状到中等形状,添加小细节。制作完成后复制它,将其调整为三到四个变体,用来雕刻树叶的画笔是 Clay、Move 和 Dam Standard。

使用UE4和SpeedTree制作丛林场景
然后使用Substance Designer创建反照率贴图,Substance Designer 中确定主图之前,仍然需要进行多次迭代,并添加/删除不同的功能。该图只需要一张高度图(可以使用 Grabdoc 函数直接在 ZBrush 中烘焙),并且可以为叶状颜色变化、叶脉着色、虫害、枯萎甚至叶子上的水滴生成许多不同的东西。这也是考虑基于这个完全参数化的图设置自定义节点时的重点,因此在对大量树叶资产进行纹理处理时,速度会快得多。但需要完成它,即复制图形并为我的每个植物手动调整其中的属性。将每个资产的输出打包到 RGBA 纹理(用于反照率和不透明度贴图)和 RGB 纹理(用于环境光遮蔽和粗糙度)中,将其导出到UE4中。
使用UE4和SpeedTree制作丛林场景


05
SpeedTree集成


使用 SpeedTree为植物创建几何体,为树叶和植被建模的程序方法减少迭代的大量时间。无论是简单还是复杂的结构,每一种植被都可以在 SpeedTree 中完整地创建。

使用UE4和SpeedTree制作丛林场景
创建地面植物资产的工作流程相当简单,将使用 Substance Designer 中的纹理并在 SpeedTree 中为其创建网格。从一个区域开始对植物进行分区,然后使用一个分支生成器来创建枝条。对于更复杂的设置,以创建这棵独特的橡树为例:
使用UE4和SpeedTree制作丛林场景
制作树结构:

通过创建主干和几轮分支生成器来建立基础树结构。将分支生成器的模式设置为分叉,注意噪声属性,调整 Gen 选项卡内的分叉属性(阈值、间距、平衡、对齐)。

修改树枝的长度,子分支的长度在 Spine 选项卡中的“Absolute”和“% of parent”参数之间找到一个平衡点。

此外在同一个 Spine 选项卡中,使用 Orientation 部分中的属性。在某些情况下,需要绘制起始角度参数内的曲线以类似于特定类型的树枝。在橡树中使用钟形曲线,这意味着子树枝在开头和结尾处呈扇入状,但在中间呈扇状。

最后添加叶生成器来模拟树的叶子,可以使用 SpeedTree 中的默认纹理,从 Megascans 下载地图集。

制作簇纹理:

该簇纹理可以在另一个 SpeedTree 文档中创建,同样可以使用多个分叉分支生成器来设置基础结构。用叶子生成器插入分支生成器,可以通过在其大小、变形和方向上引入一些随机性来改变叶子。

在主分支中添加一些结并在置换选项中调整噪音,这为集群纹理带来大量真实感。将相机视角切换到 XZ 平面,并在正方形大小的纹理中构建分支簇。可能需要手动省略一些碎叶或旋转其中的一些以使簇的轮廓更具可读性。捕获集群(文件 > 导出材质)并导出所需的输出贴图。

还可以通过删除叶生成器来创建无叶版本,拥有这种无叶版本可以打破原本只是绿色簇的树冠。

使用UE4和SpeedTree制作丛林场景
精炼和装饰:

无论是使用其他地方的纹理还是自己创建它,在制作树之后,进入精炼阶段。在这个阶段,通过处理“置换”选项的属性在树干表面模拟一些起伏的形状,切换到手动模式并调整一些奇怪分支的长度或角度,最后添加根和一些结。

还可以生成一些生长或附着在主枝上的附生植物,有不同的方法,但在 SpeedTree 中找到了一个解决方案。关键在于划出树枝上的向上表面,在那里附生植物可以自然生长。然后在这些区域生成苔藓或附生植物,就像处理地面树叶一样。按照以下设置找到这些区域:

1、添加另一个与主分支生成器相连的分支生成器,可以将这些生成的分支视为定位器,将其 Gen 模式切换为 Interval。

2、在 Skin 选项中,将 Type 切换为 Spine并隐藏,勾选焊接开始选项,同时增加修剪部分中的向下属性,直到省略那些指向下方的脊椎。

3、创建一个区域生成器并将其与之前的生成器链接,在生成选项卡中,减少位置属性,直到这些区域仅位于脊椎的最低位置,这意味着这些区域只覆盖主要分支的向上表面。可以在这些区域内种植任何东西,它自然会留在主要树枝上。

使用UE4和SpeedTree制作丛林场景
以上是在 Speedtree 中创建植物资源的方法,可以将植物直接导出到UE4,设置树叶的材料是在UE4中实现外观的一个重要方面,可以查看Ben Cloward 的创建树叶材质的系列教程。次表面颜色在着色器中可以让光线像在现实世界中一样穿过树叶,也可以对分离的次表面纹理进行采样,次表面颜色仅源于着色器中的反照率。有助于减少引擎内的绘制调用,因为次表面需要 RGB 贴图,并且不想在着色器中采样太多纹理。


06
建筑资产


在 Maya 和 ZBrush 中创建模块化建筑资产,这些建筑资产嵌入装饰物,以提供更多细节,而无需对其建模,可以使用单独的第二个 UV 通道进行修剪来实现。

对于修剪纹理,在 Maya 中为装饰品的基础网格建模,并在 ZBrush 中为它做一些雕刻。然后使用 Grabdoc 功能为每个装饰品捕获单独的高度图。这些贴图用作 Tile Sampler 节点的图案输入,在 Substance Designer 中以正方形大小的纹理布局。可以用更多的细节来修饰它,比如裂缝、表面起伏。法线贴图是UE4中的着色器中唯一需要使用的输出。

使用UE4和SpeedTree制作丛林场景
遵循在 Maya 和 ZBrush 中创建资产的传统工作流程。以石柱为例:

1、在切换到 ZBrush 进行一些雕刻之前,柱子在 Maya 中以基本形状建模。在 ZBrush 中雕刻网格的边缘,使用几个自定义画笔来添加裂缝或雕刻起伏的表面。可以使用置换笔刷从岩石纹理中投射一些噪点,以添加细节。雕刻微观细节是不必要的,可以在 Substance Painter 中创建,然后使用 hPolish 画笔来细化细节。

2、为低多边形网格复制一次网格,将网格减少到大约 2000 到 3000 个多边形计数。在 Maya 的默认通道中展开低多边形网格的 UV,为第二个通道中的修剪创建另一组 UV。只需要解开装饰品出现的网格部分,导出网格。

3、将网格导入 Substance Painter 以进行烘焙和纹理化,然后导出纹理。

使用UE4和SpeedTree制作丛林场景
网格和纹理可以导入到UE4中,创建一个自定义着色器来渲染网格上可见的装饰物修剪。下面是着色器中法线的设置,需要采样两个法线纹理,一个用于网格,一个用于修剪(设置为使用第二个 UV 通道)。在使用 BlendCorrectedNormalAngle 节点混合之前,将它们插入到具有两个单独参数的两个 FlattenNormal 节点上,以独立控制强度。它是可选的,但使用 alpha 蒙版进行修剪混合它们。
使用UE4和SpeedTree制作丛林场景


07
材料


创建游戏环境的迭代过程,可以在开发的任何阶段尝试不同的材质和着色器。实际上,地面纹理是在项目开始时很快创建的。一直使用到项目结束时,通过制作质量更好的来替换它。

使用UE4和SpeedTree制作丛林场景
不需要太多时间创建新的森林地面材料,因为在初始阶段已经创建了一个。创建这种材质的过程主要包括:创建地面泥土,然后用树叶、岩石、针、树枝等覆盖它。使用之前的树叶创建阶段拥有许多不同树叶纹理的优势,将高度图放到 Substance Designer 中,并使用 Shape Splatter 节点散布在整个地面上。
使用UE4和SpeedTree制作丛林场景

只为地面上的特定区域遮掩密集的散落叶子,而其余部分则稀疏,这样就不会被细节所淹没。在自然界中,由于风、雨和表面起伏的影响,树上的枯叶分布不均,通常成大团。接下来在材质中添加的东西,也就是地面上的一些树枝,以同样的方式散落。这些分支来自 Megascans,并在 ZBrush 中为高度图烘焙,用针和石头盖住地面。

当一切都布置好后,就该细化细节了。调整一些涉及每个组件(树叶、岩石、树枝……)的尺度、分布和密度的属性,以制作材料的自然外观。最后使用 Water 节点,在地上创建几个水坑。对于这张图的最终版本,只花一点时间就制作另外两个版本:一个叶子更拥挤,一个湿度更高,所以可以在UE4中更好地改变地面纹理。

使用UE4和SpeedTree制作丛林场景
另一方面,树皮材料是第一次接触 Substance Alchemist。这个强大的工具可以完全从网络上的单个图像创建逼真的材料。主要挑战是避免计算机生成的外观并保持自然、易于阅读的材料。还将 Alchemist 的输出纹理贴图带入 Designer 以改进一些元素,主要是关于修改一些高度数据并减少来自反照率的闪电信息。
使用UE4和SpeedTree制作丛林场景


08
后期处理


在为场景设置照明时,艺术家会考虑三个重要因素:现实、艺术和技术限制,这可以查看 James Gurney 的“颜色与光”一书,他的书对光在现实生活中的不同场景中的表现提供了清晰而全面的理解。

场景完全使用动态照明,虽然会降低一些性能,但在相反的方向上,为了使用静态照明而在整个地图上烘焙照明的想法刚刚消失。在现实生活中,照明涉及:太阳、来自天空的漫射光和来自被照明物体的反射光,这分别对应于UE4的定向光、天光和反射捕捉。 所以用定向光、天光设置场景,都设置为“可移动”,让它们只投射动态闪电。 另一方面,反射捕获对整体外观没有真正影响,因为场景中没有多少反射对象。

定向光的设置非常简单,因为除了调整强度和温度之外,几乎将所有设置都保留为默认设置。还打开Light Shafts,以通过树木的光圈制作光源。随着光源越来越远,阴影会变得柔和和模糊。这种类型的软阴影的技巧是降低级联阴影贴图的分辨率,问题是如果分辨率太模糊,它不会渲染来自地面植物的阴影,所以需要一些调整,以调整阴影分辨率。

在 Sky Light 中,将 Source Type 切换为 SLS Captured Scene,用 HDRI 贴图替换了默认天空。通过这种方式可以提供与天空颜色匹配的阴影,而不是根据指定的立方体贴图发出闪电。从HDRIHaven.com拿了很多 HDRI 贴图,并尝试哪一张最适合场景。
使用UE4和SpeedTree制作丛林场景
还放置几个聚光灯以及一些假闪电的场景,可以照亮一些黑暗的地方。使用网格距离场环境光遮蔽 (DFAO)。DFAO 在提高场景的真实感方面具有巨大的影响,因为在对象周围的边缘提供平滑、柔和的阴影。为场景提供了良好的深度感,但问题是整个树叶的柔和阴影不足以描绘植物或灌木。叶子或树冠之间的缝隙中总会有一些非常暗的阴影,所以需要在 PostProcessVolume 中利用 Screen Space Ambient Occlusion (SSAO) 来实现更集中的阴影,并结合DFAO制作软阴影。需要将天光中的遮挡组合模式切换为正片叠底。此外在缓冲区可视化中,切换到 Ambient Occlusion 以可视化 SSAO 并调整其属性,直到 AO 变得密集但在远处逐渐消失。
使用UE4和SpeedTree制作丛林场景
使用UE4和SpeedTree制作丛林场景
后处理阶段,在 PostProcessing Volume 中,打开 Bloom、Chromatic Aberration、少量的晕影,并应用锐化材料。最后是颜色分级。在决定颜色分级过程的工具时,这完全取决于个人喜好,在 Davinci Resolve 引擎之外对场景进行分级可以更好地控制。除了全面的颜色编辑功能外,该工具还提供对颜色数据的深入分析。
使用UE4和SpeedTree制作丛林场景
在 Davinci Resolve 中的颜色分级设置以 65-Point CUBE 文件导出,然后将它带入 Photoshop 并将分级应用到默认的查找表 (LUT) 纹理,将分级的 LUT 直接拖到 Unreal 后期处理中。


09
总结


丛林场景制作完成,在环境艺术中经常看到的一个常见错误是容易将多余的细节放在场景中。对此的建议是截取屏幕截图并在 Photoshop 中检查其值和形状,或在每次重大更改后将它们与以前的值和形状进行比较。

使用UE4和SpeedTree制作丛林场景

可以在 Photoshop 中应用剪切过滤器(过滤器>过滤器库>剪切;级别:3-5,边缘简单性:6-8;边缘保真度:1)简化屏幕截图然后在虚幻引擎中应用必要的更改。