在 Houdini、Katana 和 RenderMan 中重现瑞文戴尔场景

介绍
我叫 Fady,我是 DNEG 蒙特利尔的构建主管。有趣的事实是,我在开罗的艾因夏姆斯大学学习古典文学,这是一个与我选择谋生的领域完全不同的领域。
我有幸周游世界,为业内知名人士工作。我在埃及开始了我的自由职业生涯,我为电视广告、电视动画系列做过一些建模和纹理绘画。我的第一个专业步骤是在埃及吉萨的 AROMA Design & Solutions,在那里我开始了我作为一名通才的实际职业生涯。我做过建模、纹理绘制、外观开发和其他一些事情,比如照明。
我有幸在迪拜的 Barajoun 从事动画长片工作。之后,我有机会在 DNEG London 担任通才 TD 工作。我还在 Weta Digital 担任过美容师/建模师,为《星际特工》、《千星之城》、《正义联盟》、《阿丽塔:战斗天使》和其他节目等节目担任美容师/建模师。
然后,我加入了温哥华的 Scanline VFX,担任美容师/CFX 艺术家,在那里我参与了正义联盟、梅格等节目,并短暂参与了黑豹。后来,我有机会加入了 ILM Vancouver 非常有才华的团队,担任建模师(在那里我做过硬表面和有机建模)和新郎,为 Bumblebee、Aladdin 和 Overlord 等项目做准备。
然后我在温哥华和蒙特利尔的 Method Studios 担任首席美容师,后来被提升为新郎主管,在那里我参与了诸如《海王》、《圣诞编年史》、《血腥》、《黑衣人:国际》和《女巫》的翻拍等节目。
这段旅程将我带到了今天的位置,我开始在 DNEG 蒙特利尔担任 CG 构建主管,在诸如捉鬼敢死队:来世,无限等节目中,这标志着我最后一次动手表演(至少现在是这样),因为我已经过渡到构建主管,我的职责是建立一个强大的团队,可以处理从建模到修饰的复杂资产工作。

在瑞文戴尔场景中工作
我是指环王的忠实粉丝。我的第一个新郎演示卷轴是关于霍比特人的。
但是 Rivendell 项目开始时与我的朋友打赌(我最终输了),我可以在短短一个月内重新创建这个概念!

后来我决定改变这个概念,因为我想创造一个更好的构图。
显然,我高估了当时完成全职新郎头工作后一天的工作时间。重新创建瑞文戴尔一直是我的梦想,这似乎是一个很好的挑战,也是学习我以前从未涉足过的行业新方面(如水模拟、热模拟、散射和美元)的重要来源和动力。最让我自豪的是,这个项目花了多长时间,以及我完成它的决心。
参考工作很容易,我有很长的建模背景。所以我可以阅读和理解不同的建筑物是如何创建和连接的,你可以从互联网收集的参考资料中提取很少的信息(有时在行业工作时会出现这种情况,并且没有提供参考资料)。

我设法安装了 CentOS 7.6 作为我的操作系统,这让我可以灵活地安装和修改我们在任何工作室的日常生活中使用的一些主要 DCC。
此外,将 CentOS 作为我的操作系统允许我使用 ZFS 文件系统和 NFS 通过 10GB 网络接口构建、安装、配置和连接我的存储服务器到我的系统,以允许我以合理的速度传输大文件。

我家的设置如下:

1) 主工作站
2x 2698 Xeon 80 线程
256 GB 内存 DDR4
RTX泰坦
用于系统和缓存驱动器的多个 SSD
艺卓CG24

2) 存储服务器
2×2620 24 线程
128GB DDR3
60 TB SAS

项目计划的一个主要部分是创建一个可靠且高效的家庭管道,将所有东西联系在一起,形成一个完整的谜题。
该项目的一个关键点是利用皮克斯的 USD(通用场景描述)作为 Houdini、Maya 和 Katana 之间的桥梁。当时,我不得不手动编译。在无数个不眠之夜之后,有一天它奏效了。而那一天将永远留在我的记忆中。
然后是时候安装所有可以帮助我到达终点线的部件了。我决定使用行业标准工具,例如 The Foundry 工具集(Mari、NukeX/Studio、Katana)、Houdini、Mudbox、ZBrush、SpeedTree、UVLayout、RV、Modo、Substance Suite、Pixar 的 RenderMan。

封锁和建模
该项目的目标是模仿生产工作流程。我首先用简单的形状屏蔽了场景的外观。在阻塞阶段照亮场景在决定资产的整体复杂性方面发挥了巨大的作用,在创建摄像机位置和动画的同时让场景中的灯光让我有机会在早期阶段可视化场景。
我在阻塞阶段使用了 Houdini。此外,我开始使用 Houdini 对主要建筑物进行建模,这是一次冒险。
对于建筑物,如上所述,我在创建屋顶瓦片时利用了 Houdini 强大的程序性。在互联网的帮助下,我找到了一些不同的方法来创建砖墙设置,后来帮助我使用相同的方法,但使用预先建模的屋顶瓦片。
装饰品也是如此(因为它是精灵建筑),我遵循了与上述相同的方法,但这一次,我从传统的建模方法中吸取了很多。正如我上面提到的,阻挡阶段让我在建模时可以节省工作量,并且不会过度使用单个区域,因为从我为镜头选择的相机距离来看它是不可见的。
悬崖是相当冒险的。在我的职业生涯中,我第一次决定尽可能深入地研究程序建模。在查看了来自不同欧洲地区的悬崖的多个参考资料后,在花了很多时间寻找 Houdini 技术如何创建程序工具来创建悬崖之后,我意识到我可以做到!这促使我创建了悬崖生成器 v01。


CliffGenerator v01 允许我绘制一条简单的曲线作为悬崖的轮廓。然后该工具将曲线复制到预定义的高度,放样,然后将体积拉伸到预定义的深度。在这些步骤之后,该工具然后将具有不同方向的形状的点(您可以创建形状或保留它的默认值,应用了 Mountain SOP 的立方体)分散在不同的方向上,然后在立方体和悬崖之间应用布尔减法运算,这给出了有机的最终形状,就像您在下图中看到的那样。
我创建的另一个工具是 layeredRock 生成器。这个工具基于一个教程,但做了一些修改来给我我需要的结果,这是我想到的所有不同元素的分层岩石。然后将生成的几何图形带到 ZBrush 进行重新网格处理以进行清理,并为我提供一个四边形几何图形,稍后我可以在渲染时间细分,以防我使用基于置换贴图的任何雕刻细节。
我使用 Mudbox 进行置换贴图实验,我更喜欢 Mudbox 而不是 ZBrush 的原因是我可以轻松地在 Linux (CentOS) 中使用它,并且不需要安装 VM 来启动 ZBrush。

植被工作
植被是一件很有趣的事情。我使用了 Houdini Heightfield Scatter 工具集并进行了一些修改,以便能够导出与 USD 兼容的渲染时间散射系统,以便以后在 Katana 和 RenderMan 中使用。
我开始在 SpeedTree 8 中创建松树,其中分离树冠和树皮使我能够根据从 Houdini 导出并包含在 USD 文件格式中的 Cd 属性轻松创建不同的材料。
我总共有 14 种树木,三种不同的尺寸(大、中、小),我还有大约 6 种灌木。
多亏了 Houdini 中 For-each 循环的强大功能,Houdini 中的 USD 原型实例节点(它为每个基元分配了唯一的路径),结果正是我所期望的,我得到了一个非常有组织的散射系统,如下所示武士刀场景图。
有了一个坚实的散射系统,创造草是一种呼吸。有 6 个不同的草丛,从小到大,我可以灵活地快速查看它并进行快速迭代。
我很高兴创建的另一个工具是 shrubsScatter v02。我决定使用 Heightfield Scatter 的强大功能,经过多次反复试验,我设法将 Heightfield Scatter 节点与原生地理一起使用,而不是 Heightfield geo。就其本身而言,这对我来说是一个巨大的突破,因为它让我可以小心地将灌木放在我想要的地方。我肯定从以前的工具中偷了一些灌木。

纹理场景
让我们将场景分成 3 个不同的类别:建筑物、山脉、树叶。
对于建筑物,我遵循了一个简单但结构化的工作流程。我必须完成整个建筑纹理工作才能设置模板。使用此模板,我可以轻松简化建筑物其余部分的纹理工作流程,从基本颜色蒙版 ID 到导出正确的颜色空间以确保均匀性。
对于第一座建筑,我要克服一个挑战,那就是屋顶瓦片。概念艺术中的屋顶瓦片具有独特的图案,非常明显,为建筑增添了很多特色。参考从互联网上收集到的来自 Rivendell(由 Weta Workshop 提供)的图像的参考资料,我开始仔细地对瓷砖进行颜色编码,以便以后能够利用彩色顶点并在 Substance Designer 烘焙网格工具中烘焙它们创建一个颜色 ID 贴图,稍后我可以在 Color to Mask 节点的帮助下在 Mari 中使用该贴图。
我决定使用 Mari 强大的节点图系统作为我为建筑创建的模板的基础,因为在不同的 Mari 项目之间传输它会更容易。
我首先专注于完成每个建筑物的木材和石材方面。由于我通过将木头/石头分成不同的不同 UV 壳来仔细地对这些建筑物进行 UV 处理,因此我可以一次专注于一种材料。
一旦我对第一个建筑的结果感到满意,我就采用了相同的模板,并将其用作建筑其余部分的起点。通过这种方式,我成功地简化了建筑物的纹理工作流程,并在创纪录的时间内完成了它们。
对于山,我采用了相同的技术,但这次我使用了 Substance Painter 和智能材料。我将我从 Megascans 收集的一些材料分层为智能材料。在梦幻般的粒子画笔的帮助下,我能够创建一个雨水阻尼效果作为混合蒙版。同样,精简是该项目资产快速周转的关键。
对于树木的纹理,我什么也没做!这将在外观开发部分进行解释。我将开始讨论我是如何为树木创造这种外观的,以及我如何在今年秋天给它们带来感觉。
如上所述,我还没有做任何纹理工作。我依靠 RenderMan 的力量。使用 PxrSurface 着色器和一些混合节点、PrimVar(从 Houdini 导出的 Cd 属性)节点以及一些调整,我设法实现了不同的外观。这是 Katana 内部材质设置的屏幕截图。
我对场景中的灌木、草和所有树叶使用了相同的设置,并进行了调整以适应位置。

渲染
该项目的部分计划是使用 Katana 作为外观开发和照明工具。Katana 是一种行业标准工具,可让外观开发和照明过程变得愉快。
这是我的 Katana 场景设置的屏幕截图,我使用了 Live Groups 方法。Live Groups 是一种方法,您可以在 Katana 场景中创建一个包含所有几何体和材质的组,然后将该组加载到一个主要的 Katana 场景中,您将在其中组装所有实时组并为您的场景创建最终设置。
我的主要武士刀场景包含九个现场组,如下图所示。
该场景还包含 Cryptomatte 设置(橙色背景)、Utility pass(绿色背景)和渲染设置(蓝色背景)。
对于渲染设置,在创建外部场景时,我使用了 RenderMan 的 PathTrace。我节省了很多时间,因为我不必加快采样以获得足够好的图像。如果我在工作室中使用渲染农场渲染这个场景,我会增加一点采样以避免噪音,但是,我决定使用 128 个样本,结果足以满足我的需要。
我使用的另一个技巧(感谢首席灯光师Remi Bitawi)是分别渲染体积并利用 RenderMan 出色的去噪功能,在那里我仅使用 32 个样本渲染体积并运行去噪功能,这在 6 分钟内给了我很好的结果一个框架。
对于水模拟游戏来说,这本身就是一次伟大的冒险。多个教程和无数小时的搜索,从头到尾测试一个瀑布(从创建到渲染,在这里你可以看到一个早期的实验)。
我总共创建了六个瀑布,这些瀑布中包含白水设置以及薄雾体积。
我在 Jeff Wagner 的一个研讨会中听到的一条建议如下:“使用高度场作为对撞机,它们的计算速度非常快”,这绝对是真的。通过这种方法,我能够创建主要的湖泊瀑布,如下图所示。

这个项目的后期制作非常有限。重点关注的领域是消除一些弹出体积、添加发光/绽放效果、进行天空替换以及正确使用 Zdepth。所有这一切都归功于我的兄弟 Mina Kadry。如果没有他的帮助,我会花更长的时间来完成这件作品。
在下图中,您可以看到我的 Nuke 脚本的屏幕截图。

结论
这个项目花了我大约一年零七个月才完成!在这个项目上花费的实际时间高达 1320 小时。平衡全职工作(有时加上加班)和生活责任,我发现自己每天可以工作几个小时,周末可能每天工作 5 到 7 小时,有些日子根本没有。
我在这个项目中面临的主要挑战是让 USD 在这个项目中使用的所有 DCC 之间正常工作,完成水模拟,最后是渲染时间。如上所述,我必须在家里渲染所有东西。这意味着,我的本地工作站在渲染期间不得不被占用很长时间,这使我无法完成其他方面,例如 comp。
我对任何艺术家的建议,环境艺术家,FX 艺术家,角色艺术家,实际上任何人都不要放弃你的项目。完成可能需要更长的时间,但最终,你会从你犯的错误、你做的正确的事情以及你看过的所有教程中获得很多知识。
特别是对于环境艺术家来说,慢慢开始,不要急于完成最终产品,而你仍然需要遮挡你的场景。如果可以,请始终在手头设置临时灯光并在场景中安装相机。它将帮助您确定可以节省的地方以及必须花费时间和精力的地方。
希望这篇文章能阐明我完成这个项目的方法。

返回首页

作者 lll

发表评论