用程序化系统、Trim Sheet 与自定义 Shader 搭建模块化哥特环境
介绍
我叫 Rustam Zhukov,进入游戏美术领域的路径大致可以分为几个清晰的阶段。
和很多人一样,我最初只是单纯地沉迷于游戏——在旧主机和朋友家的 PC 上玩游戏,完全沉浸在这些世界里,却从没想过它们是如何被构建出来的。随着时间推移,这种兴趣逐渐转变为对创作方向的更广泛探索,也促使我学了六年建筑。
建筑为我打下了艺术与创作方面的坚实基础,但在学业的最后两年,我的关注点发生了转变。相比纯粹的技术执行,我对想法的视觉表达更感兴趣。
我积累的所有知识——构图、空间逻辑、结构、灯光、色彩和氛围——逐渐在建筑可视化中找到了出口。毕业后不久,我开始与一家 3D 设计工作室合作,并一直合作至今。Archviz 教会了我纪律性、精确性,以及如何构建可信的环境。
不过在过去两年里,我的重心明确转向了游戏开发。我开始制作游戏可用环境,学习实时工作流、模块化系统、trim sheet 和优化。从那以后,我完成了多个规模和目标各异的作品集项目。



Hell Gates
Hell Gates 是我迄今为止规模最大、技术层面最完整的个人项目。它完全从零开始搭建,定位为面向生产的实时环境,重点放在半风格化处理、模块化、trim sheet、程序化系统以及艺术上的整体统一。
这个场景围绕俯视角玩法视角进行设计,灵感来自 Baldur’s Gate 3、Diablo IV 和 Titan Quest 2。项目并没有依赖某个明确定义的概念,而是从最初的粗略草图出发,在生产过程中通过持续创作探索逐步演化。这个过程让环境得以有机生长,许多艺术决策都直接在引擎内完成细化。
对我来说,一个关键点在于理解这三款作品的创作者如何处理各自的视觉识别。它们的 art direction 既不是纯粹风格化,也不是严格写实——而是自信地处在幻想美学与扎实可信世界之间。我并没有直接照搬视觉母题,而是分析它们在环境艺术层面的特征(材质丰富度、色板、道具制作、俯视角可读性),再把这些品质转化为我自己的诠释。
目标不是复刻它们的风格,而是理解氛围、写实与艺术夸张之间的平衡。



参考
由于没有明确概念可以遵循,而且过程中许多艺术决策都是凭直觉做出的,因此对我来说,建立清晰的内部准则和边界非常重要。没有这些边界,探索阶段很容易失去焦点,偏离核心想法。
为了保持清晰度和方向感,我把调研整理成几个关键视觉支柱,用来定义场景的身份。这些包括哥特建筑、氛围与灯光、材质语言、植被、岩石与石阵、雕像与坟墓,以及最重要的——从三款参考游戏中精选出的案例,它们构成了整体艺术基准。
这个框架让我能够简化决策、把探索控制在可控范围内,并确保所有元素都服务于同一个统一的愿景。

场景规划
项目从 blockout 阶段开始。核心想法相对简单——一个明亮的传送门作为主要视觉焦点。不过,由于场景采用俯视角观看,因此需要一条强烈的方向轴线,在视觉上引导玩家穿过空间。为此,我加入巨大的下行阶梯,直接通向大门,从而同时强化尺度感和视觉流动。
建筑嵌入山体之中,整体采用较为线性的构图。由于结构足够清晰,模块化套件不需要大量变化。在完整生产环境中,我会进一步扩展它以支持模块化建筑,但在这个场景里,聚焦的结构让系统保持高效。

在关卡设计中,仅有清晰的前进引导还不够。确定主路径后,我加入了横向移动选择,避免对玩家造成过度限制。我打断楼梯栏杆,让侧向通行成为可能,并额外加入两条用于探索和潜在遭遇的路线。一条是沿着墓地的陡峭路径,暗示紧张感或伏击;另一条是小型废墟附近的更平缓路线,暗示隐藏奖励。

模块化资产
场景中的建筑采用模块化方式搭建。由于体量巨大且具有纪念性,加上大门结构存在重复节奏,避免视觉重复成为关键挑战。需要特别注意,防止环境显得过于统一。

大部分变化都集中在楼梯系统中,因为楼梯本身就是具有节奏感的元素。重点还放在了多用途石块上,这些石块可以组合出更独特的砌筑图案,也能作为碎片元素在整个场景中重复使用。
大多数资产采用一致的纹素密度,即每米 512 像素,对于俯视视角而言绰绰有余,即使摄像机移动也足够。由于可见游玩区域相对有限,因此无需创建 LOD,网格本身的三角面数量也保持克制。

为了打破统一感并增添更自然的感觉,我依靠精心的对象摆放、RGBA 遮罩变化、顶点绘制以及贴花作为最终的细节处理环节。

独特资产
场景中的大多数独特资产都遵循一致的生产流程:在 ZBrush 中进行高模雕刻、创建低模、在 RizomUV 中进行 UV 展开、在 Marmoset Toolbag 中烘焙,以及在 Substance 3D Painter 中进行贴图制作。虽然这是标准工作流,但某些资产会根据其复杂度和在场景中的作用而需要稍作调整。


对于主雕像,我从 Mixamo 导入了一个处于所需姿势的基础人体结构网格,并在进入细节雕刻之前对其进行了结构上的细化。由于其体量和视觉冲击力,这个资产还在引擎中于烘焙好的基础贴图之上叠加了额外的细节贴图,从而在不提高贴图分辨率的情况下增强了表面的丰富度。

石像鬼带来了不同的挑战。考虑到它们的雕塑复杂性,我选择了一种更高效的方法:从摄影测量基础模型开始,并将其烘焙到准备好的几何体上。这让我能够在保持生产限制的同时保留大量细节。
较小的道具,如火盆、屋顶窗、墓碑和基座,则更为直接。这些是完全独特的资产,带有烘焙纹理和相对简单的着色器。
在创建独特道具的整个过程中,我保持了整个场景中整体纹素密度的一致性。由于雕像和石像鬼的形态,它们在 UV 布局上需要付出最多努力。所有石头资产共享一个在 Substance 3D Painter 中从零构建的自定义智能材质,它添加了受控的污垢堆积、裂缝、苔藓和微妙的表面变化,以保持它们在视觉上协调统一。


植被套件
自然元素在场景中扮演着重要角色,因为它们占据了可见空间的很大一部分。因此,我投入了大量时间和反复迭代,以实现独特的外观和技术效率。在整个过程中,我尝试了几种不同的方法。

树木图集采用了混合工作流制作。我首先在 SpeedTree 中生成树枝结构并烘焙,然后在 Substance 3D Designer 中细化和扩展纹理。之后,我创建了体积感树叶簇,并回到 SpeedTree 中将它们仔细分布到基础树木结构上。一个关键阶段是定义整体剪影和色彩平衡——这标志着从简单的写实基础或半风格化外观,向更有意为之的艺术方向的转变。我大量依赖概念艺术和传统绘画来实现这种平衡。还加入了额外的苔藓斑块和剥落树皮细节,以增强表面的复杂程度。

草成为了我继树木之后的第二个骄傲。整个草的图集是在 Substance 3D Designer 中程序化生成的,使其高度灵活。我可以调整簇形状、在图集中的位置、缩放、密度、颜色变化和其他参数,而无需从头重建纹理。

对于灌木,我从摄影测量基础开始,重建了所有辅助贴图,并将结果转换为优化后的图集。
所有植被资产都包含由遮罩驱动的、基于着色器的细微风动画。草和灌木还使用柔化的顶点法线,以确保与光照产生更可控、更自然的交互。在变化方面,我更多依赖几何多样性和着色器参数,而不是制作大量单独的纹理。

岩石与石块
尽管岩石和石阵在技术上是通过专门的雕刻和烘焙制作的独特资产,但它们在设计时也考虑了额外的灵活性,以便在整个场景中有效发挥作用。

第一个需求是更高级的着色器。它使用打包遮罩(packed masks)来驱动边缘高光、次级材质混合、凹缝污渍和苔藓分布,同时还支持基于世界位置生成程序化苔藓。这使得资产能够自然地适应其所处的位置,而无需额外的纹理集。

第二个重要元素是自适应 UV 行为。该设置能够在不影响纹素密度的情况下缩放网格,并引入由世界位置驱动的图案变化,从而减少在整个环境中放置多个实例时出现的可见重复。

石头的摆放并不局限于手动构图。我还通过物理模拟生成了两级实例,以制作更自然的石堆。在这些模拟中,我使用了 Saeid Gholizade 开发的 Physical Layout Tool(Unreal Engine 商城),它让我能够快速生成可信的、由重力驱动的簇群,同时保持对最终布局的完全控制。非常感谢作者创造出如此实用且适合生产环境的工具。
这些簇群有助于在大块悬崖结构与较小的地面石头之间形成更平滑的过渡,改善了垂直表面与水平表面之间的视觉流动。

材质
场景中的所有材质都是在 Substance 3D Designer 中从零开始制作的。其中许多材质都包含大量的参数控制,能够在保持整体视觉统一的前提下实现多种变化。
例如,所有地面材质都由同一个基础子图构建而成。这种设置让我能够控制石块分布、碎屑、草地覆盖范围以及核心表面属性,同时不破坏一致性。通过将逻辑集中起来,我得以快速迭代,同时让地形在视觉上保持统一。


为了给散落元素实现更自然的形状,我建模了单独的石头和碎屑形态,并将它们烘焙到两个包含所有必要贴图的图集中。这些图集随后被重新整合回 Substance 3D 图表中,并分布到地面材质上。

哥特式建筑元素共享统一的 trim sheet 材质。这个 trim sheet 让我能够构建地板和屋顶的铺装、圆柱、装饰性天花板、拱门、支柱、檐口以及各种小型装饰细节。这些网格本身保持相对较低的三角形数量,同时通过法线信息和材质处理仍然保留足够的表面细节。

贴花
表面细化的最后阶段是为环境添加贴花以丰富细节。这一步高度依赖于已定稿的几何体,并且在处理叙事细节和可见重复问题上都起着关键作用。
贴花在整个场景中被广泛使用:石刻文字、苔藓堆积、裂缝、地衣、污垢、水渍,以及网格体与地形之间的过渡融合。它们让我能够在不修改基础几何体或材质的情况下引入局部的叙事元素。
在许多情况下,与大量依赖虚拟纹理或复杂的顶点混合相比,贴花被证明是一种更节省资源的解决方案。

程序化生成
为了避免花费过多时间手动放置每个物体,并在需要进行地形调整时保持灵活性,我采用了使用虚幻引擎 PCG 系统的程序化方法。在每次更改后手动随机化并重建元素效率低下,而且难以维护。
与此同时,如果不受控制,程序化生成很容易损害叙事清晰度和环境可信度。因此,我的目标是构建灵活的系统,使我能够在更广泛、系统性的层面上运作,同时保留艺术方向。
项目中最重要的工具是一个自定义的坟墓生成器。该系统让我能够快速创建坟墓预制件,其中包括土壤堆积、植被和墓碑。在结构上,它是一个嵌入了 PCG 逻辑的蓝图,让我可以控制物体放置、材质变化、密度、缩放,以及在保留实例化逻辑的同时烘焙结果。
楼梯系统同样使用 PCG 生成。该工具沿样条线分布台阶和栏杆,并将它们投影到地形表面。它会在摆放位置引入细微的变化,并将支撑构件旋转 90 度,以打破重复感。由于 PCG 默认并不提供严格的对齐控制,因此需要进行额外调整,以便在需要的地方保持精确定位。最终,这一工作流让我能够在高效填充场景与保留艺术把控之间取得平衡。
光照
光照围绕一个明确的焦点构建——大门作为主要的发光亮点,旨在在美观镜头和玩家视角中都脱颖而出。
该设置依靠 Lumen 实现全局光照,同时几个战略性放置的聚光灯定义了关键建筑元素。我还使用了遮光板来手动塑造阴影区域并控制对比度。很大一部分光线被引导向楼梯,以强化动感和视觉引导,偶尔被树木和岩石投下的长阴影打破,以避免单调。
特效 & 音效
如果没有环境现象和声音等辅助效果,场景的氛围会显得不完整。在《Hell Gates》中,我决定至少探索游戏制作中这些方面的一部分,以推动环境超越静态视觉。
这一阶段最有收获的部分之一是开发自定义雾效着色器。它主要基于 Asher Zhu 一篇优秀文章中的见解构建。
雾效系统成为了一个高度灵活的艺术工具。它提供了对形状、密度、动画、颜色、位置和环境交互的广泛控制。对于这个特定场景,我将自己限制在两个主要预设(来自传送门的自发光渐变和地面雾),因为我想避免用过度的视觉效果压垮环境。然而,该系统的潜力要广泛得多,我计划在未来的项目中进一步探索它。
火焰使用了免费资源库中的 M5 VFX Vol2. Fire and Flames (Niagara)。
至于音效设计,我在这里不会详述,但它起着微妙而重要的作用。更生机勃勃的森林区域有环境植被和鸟鸣声,而接近大门时会引入来自坟墓的远处低语、噼啪作响的火焰,以及传送门之外低沉、令人不安的嗡鸣。
这些元素占据的视觉空间不如建筑或植被那么多,但它们构成了简单贴图几何体与可信环境之间的边界。
结语
总的来说,这个项目大约花了我一年的工作和学习时间。我开始时知识相对有限,并在整个过程中逐步拓展了自己的技术和艺术理解。最初只是一个雄心勃勃的个人挑战,后来演变成对 trim sheets(饰条贴图)、模块化系统、程序化材质、程序化生成、FX、基于遮罩的工作流、多套 UV、植被动画以及高效图集使用的深入探索。
除了最终视觉效果之外,最有价值的收获是将这些系统连接成一套连贯的制作思维方式的经验。
以下是我会强调的关键经验:
- 关注当前行业中真正相关的内容。重要的是理解生产工作流的发展方向,而不是盲目追逐每一个新工具,或仅仅依赖过时的管线。
- 持续更新你的技术基础,并向有经验的艺术家学习。研究专业人士的作品和拆解,比孤立地实验更能加速成长。
- 在参考资料、核心原则和 blockout(粗模搭建)上投入时间。
清晰的艺术方向和坚实的结构基础会简化后续决策,并减少不必要的迭代。 - 对自己的决策保持批判性,寻求反馈,但避免无休止的打磨。细化固然重要,但知道何时继续推进同样重要。
非常感谢 80 Level 提供分享这个项目的机会,也感谢那些其知识启发了我的工作流的作者和艺术家,以及我们行业中持续的技术进步,使这类工作成为可能。
喜欢这篇内容吗?