SpeedTree 10 !制作神秘教堂场景流程分享!-丨CG小苏
421 0
实名

通过了实名认证的内容创造者

发布于 2025-1-16 12:48:46

您需要 登录 才可以下载或查看,没有账号?注册

x
CG小苏 ”再点右上角“ ...”最后设为星标 ★
-------------------------------------- | CG小苏 | 分享最前沿的CG技术-游戏开发-CG自媒体平台 |                     
3806fab65e1fc61be00d80a47038ffb7.jpg
         作者: Louis Sullivan   作者网站:https://www.artstation.com/artwork/4NX33n
5aaead2eb2de7f6e9da3bc26ae6c2ad9.jpg


[micxp_wxonkey]wxv_3809672861850451986[/micxp_wxonkey]路易斯·沙利文 (Louis Sullivan) 分享了受电影《绿衣骑士》启发的绿色教堂项目的详细分解,讨论了使用 SpeedTree、虚幻引擎 5 和 Substance 3D设置植被以及纹理砖、石头和苔藓材料。
介绍
                                 我是 Louis Sullivan,Electric Square 的环境艺术家。我从事游戏行业已有四年多,最近从事《暗黑破坏神 IV:仇恨之舟》的制作。自从我开始从事 3D 艺术家的工作以来,我发现分析文章非常有见地,所以我很高兴能够写一篇自己的文章,并阐明我是如何创作这篇文章的。








项目灵感与目标
                                 这个项目的灵感来自 A24 电影《绿衣骑士》。我去电影院看了这部电影,爱上了其中丰富的神话象征、电影摄影和世界设计。我发现神秘的绿色教堂场景特别迷人,于是决定创作我自己的诠释。

我对该项目的技术目标是探索树叶管道、高级着色器创建以及虚幻引擎 5 中的 Lumen 和 Nanite。电影中的教堂很小而且压抑,这很符合电影的主题,但我想创造一些更宏伟、更神秘的东西。当时我玩了很多 FromSoftware 游戏,觉得重新设计这个空间会很酷,让你感觉自己仿佛走进了一个拥有骑士宝座的 Boss 竞技场。
概念设计与草图
                                 为了构思这个空间,我与我的好朋友Nate Bedford一起合作。我认为如果可以的话,与其他人合作并分享想法是很棒的,因为你总能获得灵感和新视角,而这些是你独自一人从未想到过的。https://www.artstation.com/natbed我首先研究并收集了古老的英国教堂的参考资料。这些建筑的结构非常容易辨认,构成了场景的整体构成。教堂的拱形天花板、柱子和拱门让人联想到森林和树木,所以我想加入一棵树来打破这种重复的结构,使其类似于教堂本身的一部分,模糊人造和自然之间的界限。

经过研究并从 Nate 那里得到了一些初始缩略图后,我创建了一个场景草图,以探索这些想法在 3D 中的实现方式。在草图阶段,大的改动既快又便宜,你可以专注于确定主要镜头的构图。我发现对灯光进行粗略处理很有帮助,使用 Lumen 可以轻松完成。





然后,Nate 进行了重新绘制,探索了环境的整体基调。这对于给出方向和动机确实很有帮助。如您所见,最终环境的氛围与此概念相比大不相同,但这不是问题。在创建场景时保持灵活性和迭代性是件好事。  
教堂建筑
                                 我首先为墙壁、拱门和柱子创建模块化网格。查看参考资料并确定如何将其拆分成模块化部分,以及哪些元素可以放入装饰板中。规划好这一点将指导您如何创建这些模块化网格。它还能让您很好地了解需要做多少工作。

对灰盒中的网格的主要读取感到满意后,我在 Substance 3D Designer 中创建了一个平铺砖材质。尽早确定此纹理中砖块的比例非常重要,因为我随后创建了一套必须与可平铺纹理相匹配的雕刻砖块。

这看起来是一个相当无聊的套件,但它在整个环境中非常有用。较大的石头用于破损的地板和通往王座的楼梯,而较小的砖块与瓷砖材料相匹配,因此可以无缝融入受损的墙壁。具有不同损坏程度的变体很有用,因为在引擎中使用该套件时您可以发挥更多作用。
装饰板
                                 在将装饰板放入 ZBrush 之前,我使用 Sub-D 对其进行了建模,为开始雕刻提供了良好的基础。尽量将装饰板的宽度保持在网格上,因为这样以后 UV 展开网格会更容易。 雕刻砖块和装饰板很简单。使用 Trim Border Smooth 和 Trim Dynamic 来处理边缘碎裂,可以得到漂亮的斜面。使用 Dam 标准和一些 Orb 笔刷来处理裂缝和进一步的表面破裂。我本可以花更多时间雕刻表面细节,但我决定在 Substance 3D Painter 中进行纹理处理的同时进行三级细节处理。

对于华丽的叶子图案,我遵循了 Rogelio Olguin 在 Dekagon 的 Artstation Learning 课程上的教程 ,了解如何从图像中获取图案并使用 Photoshop 将其转换为灰度高度图。然后我在 ZBrush 中使用它来置换网格并获得重复图案。

https://www.artstation.com/learning/courses/J2K/creating-tiling-textures-and-trims/chapters/o7Mj/introduction我将雕塑烘焙到 2D 平面上,并在 Substance 3D Painter 中为装饰板添加纹理,确保值和颜色与砖墙材料相匹配。一旦对装饰的基础石材感到满意,我就会将其用作雕刻砖块和宝座的智能材料,使一切看起来统一。
纳米机器人变形
                                 我使用的虚幻引擎 5 版本不支持 Nanite 网格的曲面细分,因此我使用虚幻的建模工具包,通过砖墙高度图来置换网格。对于受损的墙壁,我手动将砖块网格放置在虚幻中,然后使用建模工具包将所有内容合并在一起。置换和砖块模型的结合为套件带来了良好的深度感。

我使用装饰板来纹理更详细的建筑部件,例如大窗户和柱子。Nanite 允许我根据装饰纹理建模更多多边形,并为轮廓添加更多细节。这些网格本可以使用独特的雕刻来更加定制化,但使用装饰板大大加快了工作流程,而且树叶无论如何都会覆盖大部分表面。一旦你投入精力制作装饰板,看到你能用它们取得多大的成就是令人满意的。
主材料
                                 我设置了一些主材料,以便自己拥有完全的控制权和可重复使用性。主主材料有一些用于调整纹理的参数,而树叶主材料支持次表面散射和风动画。我为苔藓、运行时虚拟纹理 (RVT) 混合和湿度着色器创建了材料函数。使用函数拆分材料是一种很好的方法,可以让您的图表保持整洁,并且随着材料本质上变得模块化,可以实现更多的重复使用。




苔藓着色器
                                 苔藓着色器将平铺苔藓材质混合在网格顶部,使用基础材质的法线贴图为混合添加细节和分解。各种参数控制法线影响和苔藓水平和不透明度。它还可以选择使用额外的平铺 alpha 纹理来支持墙壁等垂直面。



我按照 Lukas Koelz 的 YouTube 教程 设置了混合,该教程是我在 Jonjo Hemmen 的文章中找到的。我根据世界位置添加了一些颜色,使苔藓区域呈淡黄色,因为我注意到参考资料中有腐烂的苔藓斑块。我添加了一个部分来根据对象比例缩放 UV,因此如果我调整任何对象(例如岩石)的大小,苔藓纹理密度会保持一致。另一个不错的选择是使用世界空间 UV,尽管这更昂贵。

https://www.youtube.com/watch?v=HDluA1f5gzw&ab_channel=LukasKoelz

https://80.lv/articles/001agt-004adk-castle-environment-master-material-in-ue4/主材质中拥有此功能意味着我可以为每项资产提供不同级别的苔藓堆积以适合其用途,并使场景具有统一自然的外观。
RVT 与景观
                                 我设置了一个景观材质,这样我就可以使用来自 Quixel 的纹理在几个不同的景观层之间进行混合。由于这是一个相对较小的场景,因此不需要太多的复杂性;我将其保留为草、泥土和湿泥层,以将水融入环境。然后,我按照 Unreal Sensei 的教程创建了一个 RVT 混合功能,将静态网格混合到景观中以避免出现难看的接缝。

https://www.youtube.com/watch?v=xYuIDFzKaF4&ab_channel=UnrealSensei
水和湿度
                                 为了创建水着色器,我遵循了 Stef Velzeboer 为 Dekagon 制作的 Artstation 学习课程。这很好地介绍了如何通过涟漪、焦散和深度着色实现逼真的水着色器。课程中的水非常清澈,所以我对其进行了调整,使水看起来更浑浊。

https://www.artstation.com/learning/courses/qPV/water-shader-creation-in-ue5/chapters/GMGP/introduction为了让水看起来更像静止的水,我在池塘里添加了水面藻类。我在虚幻商城上找到了 Tharlevfx 的水材料包,里面正好有我想要的东西。我查看了包中的池塘材料,并将图表的各部分集成到我自己的水着色器中,以添加池塘浮渣。我使用资产包中的急流材料创建了流经教堂中心的溪流。

我以前对在自己的作品集场景中使用资产包持谨慎态度;出于某种原因,我觉得这像是作弊。但是,如果你注明了资产的来源,并确保明确说明哪些是你的成果,那么这样做就没什么问题。使用这些效果为场景增添了个性和活力;如果我自己创作这些元素,项目时间就会不必要地延长。然后,我根据 Stef 的 Artstation Learning 课程创建了一个湿度材质函数。这确保了水位附近的网格看起来是湿的。我确实对这个材质做了一些更改,因为我在查看参考资料时注意到,浸没在水中的表面看起来并不闪亮。为了在虚幻引擎中重现这种效果,我在水面上方添加了一条低粗糙度带,但其下方的任何东西都更暗、更饱和,粗糙度值略有增加,以模仿水散射光的方式。




叶子
                                 在参观了达特穆尔的威斯特曼森林(英国仅存的古老温带雨林之一)后,我萌生了创作一棵矮小橡树的念头。这是一片侏儒森林,这意味着通常高大的橡树要矮得多,而是向外生长,树枝呈典型的扭曲状。这些树木古老、匍匐状的外观与我的场景基调完美契合。网上有很多参考资料可以收集,但最终,没有什么比亲身体验更好了。

复制参考中的细节水平是一项挑战。这棵树有许多不同的材质,包括苔藓、剥落的树皮、地衣和蕨类植物。这棵树还需要适合教堂内部,并通过拱起中央中殿来支撑整体构图,成为教堂建筑的替代部分。

我创建了一个块状网格以获得正确的比例和形状。然后我将其带入 SpeedTree 并以此为指导来创建树干结构。由于树的形状独特,我使用手绘树干来获得我想要的精确形状,并使用 SpeedTree 程序节点来创建树枝。这需要多次迭代才能完成,我的同事 Dennis Welling 和 Mike Fong 也给了我一些很好的反馈。我的主要错误是遗漏了大树枝和树叶卡片之间的中间树枝。观察冬天没有树叶的树木是观察底层结构的好方法,因此最好在移除树叶的情况下检查模型。



虽然我对这棵树的整体效果很满意,但树冠的结构仍然是最薄弱的部分。地上树枝的流动性很好,但树枝丛的过渡不太逼真,而且在许多地方缺少关键的中间树枝。这是我将来在创作树木时会考虑的问题。为了创建树枝纹理,我将 Megascans 树叶图集导入 SpeedTree 烘焙成簇。我加入了大树枝、小树枝和裸枝来构建树冠,还加入了一些单独的树叶来增加细节。



使用锚点意味着我可以合理地种植树冠,从大的裸枝开始,然后连接较小的填充枝,最后使用单独的叶子来增加蓬松度。

我将树干几何图形导入 ZBrush 进行雕刻,重点关注主要和次要形状。我的目标是从参考中捕捉自然扭曲的形状,并添加细节,如结、剥落的树皮和生长在树表面上的藤蔓。



我导出了通常的高多边形网格用于烘焙,以及一个可用于游戏的网格,由于 Nanite,该网格的多边形数更高,可以捕捉几何细节。我还导出了一个高度抽取的网格用于展开。多边形数越少,操作起来就越容易,在 Maya 中,您可以使用“传输属性”工具将 UV 复制到游戏模型上。我创建了两个 UV 集。第一个 UV 集将 UV 放入 0-1 空间,用于烘焙法线和 AO,并创建用于材质分解的遮罩。

第二组所有贝壳都朝上,具有正确的统一纹理像素密度。这用于以逼真的方式将平铺树皮纹理映射到树上。 我使用 0-1 UV 集在 Substance 3D Painter 中烘焙了网格。我导出了烘焙后的法线,以从高多边形和包含三个通道的打包遮罩贴图中获取雕刻信息:烘焙环境光遮蔽;纹理蒙版贴图——此蒙版用于混合两种不同的平铺纹理,在本例中为正常树皮和剥皮树皮;渐变图

渐变图是一种灰度纹理,用于将颜色渐变映射到网格上。黑色值映射到渐变的起点,白色映射到终点。为了制作渐变图,我从烘焙的曲率和位置图开始,并添加了一些污渍、噪音和手绘元素,如地衣斑点。

渐变贴图经常用于视觉特效,但它在环境艺术中也非常有用。它非常灵活,您可以通过更换单个渐变来更改调色板,而且由于它是灰度纹理,因此您可以将其与其他遮罩打包在一起以改善优化。渐变的成本很低,因为它本质上是 256x1 纹理。Unreal 现在支持在引擎内部创建颜色曲线,这意味着您可以创建和编辑渐变并实时查看结果。如果您想了解更多信息,Epic 提供了一些关于曲线图集的精彩文档。https://dev.epicgames.com/docume ... ication_version=5.4




常春藤
                                 我使用 Sub-D 建模在 Maya 中勾勒出叶子的形状,然后在 ZBrush 中雕刻它们,重点关注叶脉、边缘损坏和轮廓破碎。



我将雕塑烘焙到平面上并为其添加纹理,夸大叶脉和边缘变色,使树叶更加突出。然后,我将纹理导入 SpeedTree 以创建集群图集。我发现 SpeedTree 基于节点的工具在创建这些分支图集纹理时非常强大。

对于网格,我将模板墙网格导入 SpeedTree 作为力。我在 Spine 部分使用这个力使藤蔓沿着模型表面生长。使用手绘树干节点让我可以更好地控制藤蔓的形状。

我沿着每根藤蔓的长度添加了大型常春藤簇,并使用锚点来放置较小的簇、单独的叶子和枯枝,以提供深度和可信度。

这种方法需要大量的手动调整,但藤蔓沿着网格生长的能力使我能够为柱子和拱门制作自定义的常春藤变体,而手动创建则会非常耗时。


蕨类植物
                                 我采用了不同的方法来创建蕨类植物图集,使用 Substance 3D Designer 程序化地创建 alpha 和 mask。Dennis Welling 有一个关于 Beyond Extent 的很棒的研讨会,深入探讨了这种方法。

https://www.youtube.com/watch?v=wGvCy-Yai9A&ab_channel=BeyondExtent我以在 Wistman's Wood 找到的 Spreading Wood Fern 为基础绘制了蕨类植物。蕨类植物的结构是分形的,从最小的叶子到大的叶子,形状都是重复的。我利用这一点,为小羽片创建了一个生成器,最终让我能够构造出完整的叶子。

获得小柱形状后,我将不透明度 alpha 与其他信息(如静脉和高度蒙版)打包到 RGBA 合并节点中,然后将其插入输出。这样我就可以在整个图形中传输此信息。

然后,我使用带有公开参数的生成器在另一个图形中创建了各种羽片。我使用 Designer 的新样条工具创建了羽片结构。

样条线上的散点图颜色节点允许我沿着这些样条线散布羽片。我创建了一个茎,并将其混合到图形中,然后打包通道,准备在图集中进行布局。

我使用新的 pinna 生成器节点制作了一些变体,并在分割 RGBA 蒙版之前使用 transform 2D 布局它们。这些蒙版用于为最终导出编写反照率、粗糙度和高度信息。Eric Wiley 还使用这种方法对 Substance 3D Designer 构建程序化树叶图集进行了详细的分析:

https://www.youtube.com/watch?v=5uqVlDlg3yo&t=2s&ab_channel=AdobeSubstance3D

我使用这些 Substance 3D Designer 纹理在 SpeedTree 中创建了叶子图集。如果您愿意,也可以在 Designer 中执行此步骤,但我发现 SpeedTree 的工具非常适合创建这样的树枝、叶子和簇。

蕨类植物网格是在 SpeedTree 中使用树干制作的,在“皮肤”部分中将可见性设置为“仅脊柱”,以布置蕨类植物的结构。我使用多个树干节点来创建蕨类植物的不同层,从底部较大的死叶到顶部的卷曲嫩叶。我使用叶状节点来制作叶子,这些节点的长度与它们所在的树干节点的长度一致。我为卷曲的幼叶添加了卷曲力,最后为一些单独的叶子添加了锚点,这些锚点打破了叶状卡片的扁平外观。

创建此模板后,我可以通过调整一些值和叶子的位置,非常快速地在 Speedtree 中制作蕨类植物的大小和年龄变体。
灯光
                                 我想尝试使用 Unreal 5 中的 Lumen 来制作这个场景。初始设置相当简单;一个定向光和天窗,带有 HDRI 贴图,以提供更逼真的补光。体积雾是场景氛围的关键,但我建议不要用得太过,因为场景很容易开始显得苍白和虚假。我希望教堂给人一种神秘而神奇的感觉,所以我推动了这一点,同时仍然试图保留价值、对比度和真实感。我发现,使用这种设置很难实现我想要的确切外观。即使使用 Lumen 的实时 GI 调高间接强度,我也无法让足够的光线进入场景,而且感觉模糊而平坦。我决定使用一些关键的矩形灯以及一些较小的聚光灯和点灯,以便能够进一步调整照明。


后期处理
                                 我希望在虚幻引擎中尽可能多地进行后期处理,这样最终的视觉保真度就可以在引擎中看到,而不仅仅是在屏幕截图中。一些颜色分级、增加饱和度、对比度和伽玛,帮助场景摆脱默认的虚幻引擎外观。我还更改了温度和色调设置,为高光部分带来一些暖色调,为阴影部分带来一些冷紫色。最后,我通过截取场景截图并使用 Photoshop 中的调整层进行微调来设置自定义 LUT(查找表)。这里有一份关于自定义 LUT 流程的指南。


https://www.worldofleveldesign.com/categories/ue5/luts-complete-guide.php

在环境场景中设置照明和后期处理时,有一些有价值的测试。第一个是降低屏幕截图的饱和度,以便准确读取值范围。根据经验,在前景、中景和背景之间划分值是一个不错的选择。

对于室外场景,大气透视意味着远处的物体与背景更加融合。在这种情况下,这意味着由于太阳角度较低,远处的物体变得更亮,更橙色;前景更暗,更蓝。去饱和度测试对于值很重要,但也不要忘记颜色对比度!缩小去饱和的图像并以缩略图大小查看。它仍然清晰吗?你能告诉我你在看什么吗?强大的构图是实现这一点的基础,但你的灯光、雾和后期处理设置也同样重要。第二个测试是眯着眼睛看图片或在 Photoshop 中应用高斯模糊。同样,您要查看图片的可读性。通常,您需要场景中的对比度和深度以及吸引您眼球的清晰焦点。


电影
                                 从项目一开始,我就知道自己想要制作一部电影。我使用的电影《O Nyghtegal》中的音乐优美动听,其中还包含许多元素,包括奔流的溪流、风吹的树叶和粒子效果,这些元素在运动中呈现时,让场景变得栩栩如生。我使用了 FX Cat UA 的 Realistic Starter VFX Pack Vol 2中的落叶和水 VFX ,还创建了我自己的尘埃粒子效果和水腐蚀光功能。

https://www.fab.com/listings/ac2818b3-7d35-4cf5-a1af-cbf8ff5c61c1对于序列器,我遵循了 Jonjo Hemmen 的 Tequila Sunset文章和 William Faucher 的 YouTube教程中的一些建议。为每个镜头使用单独的序列器,然后将它们组装成一个主序列,可以更快、更清晰地编辑和重新排序您的电影。我使用基本蓝图添加了一些微妙的相机抖动,使相机运动感觉更自然。我使用了 2.39 的裁剪宽高比来获得电影效果,并对光圈和焦点进行了一些关键帧设置,以获得一些动态景深效果。我建议在飞行过程中保持相机运动简单。将相机限制为简单的平移和推拉,可以让它感觉更真实,更不令人迷惑,就像是用真正的相机拍摄的一样。

使用电影渲染队列 (MRQ) 渲染电影让我能够很好地控制渲染的最终质量。我禁用了 AA,而是使用设置为 16 的临时采样数来获得更清晰的视觉效果。如果您有粒子效果,我还建议使用“预热帧”以确保它们在渲染中看起来正确。 我在引擎中完成了色彩分级,因此我将其导出为 .jpg 图像序列而不是 .exr,并使用 DaVinci Resolve 进行最终编辑。这包括将镜头与音乐同步、添加标题卡和过渡,以及一些最后的后期处理调整。
结论
                                 虽然有很多挑战和经验教训,但最终结果还是让我很满意。我一开始没有做充分的规划,在整个开发过程中也没有严格控制时间,所以项目拖延的时间比原计划的要长得多。 由于开发时间过长,我开始重新制作场景的大部分内容,因为我觉得这些内容不符合我现在的标准。然而,这最终变成了一个恶性循环,当我强迫自己完成这个项目时,我必须更加严格地决定要删减什么以及什么时候结束。在项目结束时,回顾过去、批判性地关注现在你可以做得更好的所有事情是很自然的。这是一件好事!这意味着你学到了很多东西,可以将其应用到你的下一个努力中,但你需要找到平静,因为它并不完美。这对我来说是一个真正的挑战,按下发布按钮出奇的困难。达芬奇有一句名言,我认为这句话很好地概括了这一点:“艺术永远不会完成,只会被抛弃。”

感谢您的阅读。希望您觉得这篇文章有用!如果您有任何其他问题,请随时在 ArtStation 上查看我的更多作品或给我发消息 。





1                                                                   END
声明:本文章中所有的图片和视频都归原作者所有,仅供大家参考学习和交流,不作商业用途,侵删。如果你喜欢这篇文章,欢迎转发!谢谢!更多学习和交流可扫描下方二维码哦!

本帖被以下画板推荐:

授人以鱼不如授人以渔!B站和微信公众号关注: CG小苏  每日分享最前沿视频教程和技术文章白嫖资源!
使用道具 <
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表