Houdini 18+UE4制作死亡搁浅项目场景关卡全流程

达米安·拉帕(Damien Lappa)讨论了“搁浅项目”(Standing Project)的管道,这是一个有机的环境,灵感来自传说中的小岛制作公司(Kojima Productions)的游戏。
介绍
我叫达米安·拉帕(Damien Lappa)。我来自爱沙尼亚首都塔林,目前在Ubisoft Paris担任环境艺术家。
我进入游戏行业的旅程始于位于芬兰Kouvola的XAMK大学的游戏设计学位。我一直对摄影和游戏都充满热情,在我的早期学习中爱上3D环境艺术是一个时间问题。
加入育碧之前,我曾在外包工作室-Ringtail Studios和elite3d工作。到目前为止,我已经为多个项目做出了贡献,包括《鲜血与真相》,《愤怒2》,《极品飞车:热力》和汤姆·克兰西的《幽灵行动》断点。
发现胡迪尼
一段时间以来,SideFX Houdini被集成为用于多个方面的游戏开发工具。改变游戏规则的最大方式之一是Houdini Engine的发布,它使工程师能够在内部工具或第三方软件解决方案(包括3dx Max,Maya,UE4等)内部搭建过程流程的桥梁。
在某些情况下,如果您的概念在短时间内不断变化,那么执行过程可以成为一个不错的解决方案。有多个DCC软件包可让您使用其某些功能,例如3ds Max和Maya,但在某些时候它可能会变得不一致,如果最终有数据过载,则可能必须将其收起以确保文件安全。
我第一次看到Houdini是在几年前。它仅用于有限的方面,但足以激发我的好奇心,可以更深入地进入过程工作流。在制作Ghost Recon Breakpoint的过程中,我开始更加热衷于学习Houdini,在那里他大量参与了许多主题,包括世界建设。
学习Houdini成为我个人的挑战。作为一名艺术家,我将其视为一种工具,使我可以通过多种创造性方式创建环境,这些环境具有无损工作流程,其规则和交互作用均在大型和微型范围内进行。通过数字资产(HDA)将Houdini引擎应用于Maya或Unreal Engine之类的程序包,使我可以重用并适应特定需求,并且存在各种各样的可能性,并且在SideFX的支持下,用于gamedev的大多数复杂工具甚至更多比以往任何时候都易于访问。
如今,Houdini每天都成为我在其他工具中使用的主要软件。



搁浅项目:关于项目
毫无疑问,该项目的灵感来自死亡搁浅。自首次发布以来,我一直跟随着该游戏的开发团队做出令人难以置信的工作,研究其世界设计非常荣幸。
创建过程从游戏的简单屏幕截图开始,在此过程中,我从其他地方获得了一些启发,包括现实生活中的图像以及其他诸如Doom Eternal,Ghost Recon Breakpoint或Far Cry 5的项目。

最终,目标不仅是建立环境,而且还通过将Houdini和Unreal Engine链接在一起来创建和调整规则系统。
地形生成
对于许多人来说,地形的创建有时可能是一个复杂的过程,需要多个步骤和调整,尤其是当您要创建更原始的东西时。使用Houdini,可以仅使用几组节点来生成任何详细的表面,从而从头开始创建基本地形。
我喜欢在程序生成过程中使用的一种技巧称为Pareidolia,它被称为识别云中熟悉的形状。如果您被困住并且不知道从哪里开始,就会产生噪音,您的大脑更有可能开始发现一些有趣的形状,这些形状可以构建为合成物。
此过程的起点是创建几个Heighfield节点,并尽快将其保存为数字资产(HDA)。在几分钟之内,您可以创建景观的基础,您可以随时返回该景观并添加更多规则。在此阶段,我还建议根据坡度和曲率将第一个蒙版集成为图层。设置得越早,就越容易添加更复杂的逻辑,例如树木,路径或河流,以及对遮罩的调整将更加受到控制。

虚幻引擎4允许在没有任何纹理的情况下将风景蒙版与图层属性集成在一起,并在风景材料中使用其样本。在此早期阶段,它不仅为您提供了一个粗略的步骤以查看第一步,而且还可以重用它并在一个文件内将地形带到最终结果。

河系
创建景观基础后,我必须建立生成过程的第一套规则:河流系统。
如果您对河流的基本创建感兴趣,请查看Ben Schrijvers关于“地平线零黎明”中河流产生的演讲。有很多有趣的技巧可以添加到多个场景中!
https://vimeo.com/216727778
函数本身基于数字资产内部暴露的曲线,该曲线会自动适应位置。对于此项目,我通过基本的固定随机宽度简化了河流,并通过网格对融合点添加了步进效果。如果您可以通过简单的方式实现某些效果,请不要害怕这样做!有时,它有助于快速概念化概念,并在以后重用它以添加更复杂的逻辑。

样条曲线生成的数据用于修改图层,以确保例如草永远不会在水下生长。在此基础上,我还创建了一层新的湿润层,在着色器内部分配了一层湿润层,通过添加一些常数来调整颜色的亮度和材质的粗糙度,从而为河岸增加了一些水分。
通过在地面和河流之间形成交点,它不仅可以创建新的蒙版,排除规则并分散属于该区域的资产,还可以通过添加顶点颜色来显示网格内部的泡沫和位移来影响网格本身。 UE4着色器。除此之外,借助SideFX Labs(以前是Gamedev Tool),设置流图从未如此简单。

简而言之,流图是具有方向信息的纹理,该纹理基于影响着色器内部的UV的2个浮点/通道,从而带来流效果。就单个着色器中的可重用性而言,通过影响纹理和输出,将其设置为功能可能变得非常有用。使用带有顶点颜色的lerp作为混合的解释可以很容易地为运动添加所需的复杂性,例如像水一样具有泡沫效果。

如果您对制作流程图感兴趣,有很多不错的教程,介绍如何使用不同的软件解决方案来实现它,包括手工在Substance Painter中绘画。Houdini之所以如此强大,是因为每当我对随机分散的资产进行更改时,向量的方向都会自动应用。
打扮风景
创造巨大的物体有时会变得非常繁琐,尤其是在开放世界中。有很多方法可以修饰环境场景。其中之一是实例化预制资产,并使地形适应最终外观以创建令人难以置信的景观。另一种方法是使用过程生成!
悬崖的创作灵感来自我最喜欢的Etienne Carrier关于《孤岛惊魂5》程序世界建设的演讲之一。如果您还没看过,一定要看。这是Houdini在gamedev中多么强大的最好例子之一!
https://www.youtube.com/watch?v=NfizT369g60&feature=emb_logo
为了生成坡度,我将蒙版从纹理转换为3D对象,然后将其拉伸,将背面保持为一组,以影响最终的网格以移除背面。在大多数情况下,要创建有机对象,我将使用基于体素的转换(VDB),然后根据UV添加由“ Quixel Megascans”中的“高度图”纹理投影的位移。

我最近发现的另一个选择是使用SideFX Labs团队开发的Triplanar投影,该投影带来了简化的工具来构建更复杂的系统,并且如果需要,以后可以随时对其进行抛光。
用这种方法创建悬崖的主要缺点是独特和大型物体的数量。要将生成的资产导出到引擎,它需要通过Clip节点将网格划分为更多部分,以防止流式传输问题。但是,结果是,您可以基于单个纹理使地形变得异常独特。
对于我来说,使资产像塔一样是最棘手的部分。创建具有未来派科幻色彩的形状有时可能是一个费力的过程,以找到适合环境的合适轮廓。
最初,我的意图是手工制造资产,但是通过反复试验,我找到了一个有趣的解决方案。这个过程从生成一个形状相似的虚幻城市开始,然后我从其他随机片段中选出了我最喜欢的城市。

该过程主要由两个节点的组合构建:Polyextrude,具有基于每个图元的随机顶点颜色的附加属性,以及SideFX Labs开发的Lot。我决定将其余未选择的城市形状放置在很远的地方,以添加其他轮廓。
雾和云
胡迪尼(Houdini)最大的优点之一就是处理大量音乐。不需要任何高级技能就能制造云或雾。只需找到合适的形状并将其转换为云,然后将结果渲染为纹理即可。
首先,足以从基础网格物体开始直接创建一个体积,并在其空间上散布点。由于雾是由复杂的空气流组成的,因此这种网格的组合被重塑为一个体积,在这里我开始通过VOP添加采样噪声以模拟其效果。

另一个选择是使用简单节点,例如“云”和“云噪声”,但就我个人而言,我更喜欢堆叠一些VOPS,这使我可以添加“湍流”或“抗锯齿”噪声并相互混合。不要担心,创建云是一个非常有趣的过程!
我在Unreal中使用雾的方式基本上是使用简单的不发光的半透明着色器定位平面,并使用我在Houdini中的Mantra中渲染的图像作为纹理进行设置。
回到流程图,这是一个很好的例子,说明如何重用基本数学函数以在环境中添加更多动态特性。对于“搁浅项目”场景,我已经使云层急剧变暗,但是下次我一定会更加关注此主题。

散射物体
在准备好所有资产的这一刻,我结合使用了Houdini通过HDA在虚幻引擎4内部的多个实例的散射系统和内置草皮系统,将基于蒙版的微型道具带入景观材料中。
在某个时候,当您开始在一个数字资产中的两个应用程序之间使用数据时,计算更改的时间可能变得非常大,尤其是如果您最终想要稍微调整基准时。对我来说,解决方案是使用文件缓存将系统分为多个数字资产,以在每个HDA中存储和更新结果。

缓存文件提供了存储大量资产数据的选项,因此允许在虚幻引擎4和Houdini之间建立交互。我决定不引用资产的ID,而是决定通过“对象合并”节点将其直接应用于UE4。如果要直接在Houdini中显示它们,则处理分散在其中的实例可能会变得很棘手。公开文件缓存选项是携带元素并将其添加到地面投影的一种好方法,或者使它们成为流图的障碍并为河流添加其他顶点颜色。
当设置了中型和大型资产时,我决定坚持使用虚幻引擎内部的一个称为“景观草类型”的功能,该功能用于设置卵石或苔藓簇之类的微观细节,并将其分配给主景观着色器中的图层样本。设置非常容易,如果您具有遮罩数据,剩下的唯一事情就是分配正确的资产。

我有时注意到的一个常见错误是视觉信息的大量过载。当您展示这么多微型道具的可能性几乎无限时,请关注噪音。现实生活中充满了微小的细节,但在游戏世界中,有时您需要给出一些更大的比例,以免出现混叠效果或临时抗锯齿(TAA)消耗像素。保持良好的视线流引导玩家而不使所有内容都过于详细也是一种好习惯。
场景组装
因为我的目标是主要专注于Houdini和UE4之间的合作,所以我主要使用Megascans资产来组装场景。建立Megascans扫描程序的团队做了惊人的工作。使用可访问的扫描资产可以使您更加专注于实验。
尽管生成了网格,但我使用的大多数资产都直接来自UE4中的Icelandic库。虚幻和Megascans之间的桥梁不仅为您提供了导出选项,而且还提供了一些基本功能,该功能可以在一秒钟内预览结果,然后使用您自己调整的参数(例如像素抖动偏移)替换为着色器。
最后,我只使用了一些着色器。最复杂的是针对“风景”和“河流”,其中纹理之间的转换最丰富。其余的是基本的PBR或Unlit Translucent。
照明和后期处理
建立灯光和后期处理可能会非常具有挑战性。颜色分级可以改变整个情绪,或者使一些隐藏的元素讲述更多故事。我尝试使用“光源”尽快设置普通光源,并通过调整“指数雾”来试验整体情绪。
在某些情况下,仅拥有一个来源是不够的。在此场景中,我使用了柔和的点光源,将温暖设置为D50,而不是D65的整体温度,从而在形状之间添加了更多的对比度以在构图内进行引导。

我更喜欢尽量减少后期处理,仅调整色彩的饱和度并在需要时增加一些对比度。值得一提的着色器称为锐化。我用它来带回TAA采取的一些细节。这是最便宜的抗锯齿方法之一,但是它的约束是由于模糊小像素而丢失了一些细节。
学习Houdini的资源
该程序非常复杂,但并不像最初看起来那样疯狂。可能性无穷,您可能会迷失于许多主题,例如VFX,建模,数据管理或合成。就个人而言,我建议您先直接关注某些主题。最初,我开始使用Houdini作为替换Autodesk Maya中工具的桥梁,直到更多的节点开始引起我的注意。对于我来说,掌握该软件还有很长的路要走,但是我无法想象没有它的工作流程。
有无数不同的教程和课程。就个人而言,我建议从在https://www.sidefx.com/learn/上观看最基础的内容开始,并在尝试建立新节点时尝试尝试节点。如果您遇到困难,请不要害怕在Google中搜索答案。您将为有多少解决方案感到惊讶。
我强烈建议您观看的其他一些资源:
独立小精灵 : https://www.youtube.com/channel/UC7P6olyswpgJlElZA6RXUNQ
西蒙·胡迪尼: https://www.youtube.com/channel/UCvuT2bzBB0kzne16DBAtmLQ
罗汉·达尔维(Rohan Dalvi)https://www.youtube.com/channel/UCfGN9OlJF9KakdyUK04M3cA
SifeFX : https://www.youtube.com/user/houdini3d
转~https://80.lv/articles/the-stranding-project-combining-houdini-and-ue4-in-environment-art/
微信公众号关注: CG小苏
更多免费!
更多最新的CG资讯等着你~
