José León Molfino 在Houdini中模拟粘棉
José León Molfino 描述了创建粘棉模拟的过程,谈到了使用 Redshift 进行渲染,并为有兴趣学习 Houdini 的人分享了一些技巧。
你好!我是 José León Molfino,我是阿根廷布宜诺斯艾利斯的一名 3D 艺术家和多面手。我与我的伴侣和妻子共同拥有工作室精品店 Stato。在过去的几个月里,我们一直在为 ZARA、L'Occitane、Auth0 和 NFL 等公司制作几部动画片。

我一直在商业工作和个人研发之间游走。我通常会在 Twitter 上发布在此过程中想到的任何 Houdini 内容。我一直在努力推动自己在软件中学习新的 USD 工作流程。Solaris 和用于场景组装、管理和渲染的 LOP 对我来说是 SideFX 的一些最新进展。
长期以来,我一直在使用旧的 OBJ 和 ROP 上下文进行场景渲染,但我目前正在将所有这些工作流转移到 Solaris 中,在这个过程中遇到了一些困难,但最终,它有助于保持 以更有效的方式整理场景内容。
粘棉模拟
这一切都始于我一直在从事的棉花花(尚未发布)的商业项目。我看了很多棉花花的镜头,还尝试了真正的棉花材料,试图了解它是由什么制成的。我的目标是制作一块逼真的扁平棉花。所以首先,我从互联网上收集了一些参考资料。

主要形状非常基本。带有一堆孔的平面。然后我为所有孔边缘点创建了一个组,我将使用它来将两张纸焊接在一起。

我还固定了顶点并沿 Z 轴移动它们以产生将它们分开的力。另一边只是一个对称的平面。我使用牛皮纸和牛皮纸焊接约束来设置牛皮纸属性。

模拟非常简单。有了所有约束和焊接属性,我只将子步骤增加到 3,让求解器发挥作用。

通常,对于这种材料,我会使用高密度体积混合散乱的毛发,使其看起来像棉花。但在这种情况下,对于这么薄的板,我决定只使用曲线样条,而不是体积。
我做的第一件事是冻结模拟的最后一帧并设置一个休息状态。我必须给这些平面一些微妙的厚度来处理,使用“Labs Thicken”非常简单,几个 VDB 节点来平滑它,最后再次转换为多边形。

对于曲线,我首先尝试仅使用 Houdini 的头发生成工具和引导过程节点(Guide Advect、Frizz、Bend 等),以便将头发引导散布在表面上。它实际上看起来还不错,但更像是毛茸茸的皮肤,而不是棉花。

所以我意识到棉花主要是很长很细的纤维,它们全部粘在一起并压在一起。几年前,Simon Fiedler 做了一个很棒的 Houdini Hive Talk,他在其中解释并分解了一个设置以生成环绕对象的连续曲线。所以我使用该设置沿着平面创建棉纤维。
我分散了一堆初始点并通过大量迭代运行算法,直到对象被曲线完全覆盖。

然后我添加了一些噪波位移并重新采样以平滑曲线。我最终得到了 85k 条独特的曲线和 500 万个点。

最后,Point Deform SOP 用于基于牛皮纸模拟对这两块棉布进行蒙皮和变形。
渲染
对于场景渲染,我使用了 Redshift。在 Houdini-Redshift 中渲染头发非常简单。您只需将样条线转换为 NURBS 曲线,Redshift 就会将它们识别并渲染为头发曲线。我只添加了一个值非常低的“宽度”属性,因此纤维看起来超细。材料也很基础。它是一种新的 Redshift 标准材质,沿曲线具有微妙的灰度渐变和一点反射。在两张 3080Ti 卡上渲染 1600x1600 像素的单帧大约需要 1.5 分钟。

只有一个 HDRI 用于照亮场景。和往常一样,来自 Maxim Roz 图书馆。
给初学者的提示
对于类似的项目,我建议深入研究 Houdini 中的 Vellum,YouTube 上有很多关于它的教程。对于第一步,我强烈推荐 Paul Esteves 的所有 Vellum 节点视频,对于更高级的东西——John Lynch 的 H17 和 H18 大师班是非常有用的学习资源。
对于一般的 Houdini,我总是推荐 Matt Estela 的 cgwiki。他通过 .gif 示例、出色的解释和 .hip 文件使网站保持最新状态,了解 Houdini 中的所有新功能。


