通过不断地努力,我们很高兴为社区带来两项全新功能:LiveSync 插件和USD 导出模拟数据。在本文中,我们将深入了解这些强大工具如何助力优化您的工作流程。
本次探讨的两个新功能:LiveSync插件和USD导出模拟数据,都是为Marvelous Designer和虚幻引擎的共同用户设计的,但它们有着不同的使用场景。
- LiveSync插件:该功能主要用于简化繁琐的导入和导出流程。网格、材质、骨骼动画以及几何缓存等内容都可以通过一键操作进行导入和导出。
- USD导出模拟数据:该工具专为虚幻引擎 5.4 最新的 Chaos Cloth 功能而设计,可将 Marvelous Designer 中复杂的服装物理效果直接转入虚幻引擎,实现实时模拟效果。
接下来,让我们通过这个小精灵的动画作为案例,深入了解Marvelous Designer与虚幻引擎的工作流程。
在Marvelous Designer制作小精灵服装
在讲解虚幻引擎工作流程之前,我们先来看看如何在 Marvelous Designer 中制作精灵的服装。
1. 基础版片制作
Marvelous Designer 提供了多种方式来创建基础服装模型。对于本项目,我们从将 T 恤版型图片拖入 2D 窗口作为基础开始。借助造型线工具,我们可以快速切割并修改 T 恤,通过在 3D 窗口中调整版片来制作不同款式的服装,而这些修改会实时反映在 2D 版片中。
2. 多层级服装模拟
Marvelous Designer 在多层级服装模拟方面表现出色。对于小精灵服装,我们复制了底裙的版片,并使用内部线绘制花边细节,再缝合到服装整体。每一层都使得服装设计更具立体感。为方便实现理想的面料质感,Marvelous Designer的图库窗口添加了77种不同的布料预设可供使用,使裙摆在模拟中展现出丰富的褶皱和流动效果。
3. 花瓣版片制作与褶皱效果
我们用多边形工具从照片中勾勒出裙子的花瓣形状,并利用内部多边形工具和褶裥工具添加了风琴褶效果,打造出层次丰富、质感灵动的优雅裙摆。借助 Marvelous Designer 全新的 PBR 贴图生成器,还可以一键自动生成法线贴图、透明度图、金属度图和置换图等多种纹理贴图,进一步增强了服装的真实感。
4. 荷叶边制作与明线工具
为了增添细节,我们将较长的版片缝合到较短的版片上,制作出自然的荷叶边效果。接着使用明线工具添加不同样式的明线,使服装更具真实感。
完成服装设计和初步模拟后,我们将进入动画缓存阶段。
动画缓存
首先,用固定针工具将服装的部分区域固定在角色模型上。通过双击版片外线,可以快速地固定整条版片外线。还可以使用假缝工具将布料约束到人物模型上,通过调整线的长度,控制布料与模型的间距。
最后,我们将模拟品质设置为”动画“,降低重力并提高空气阻力,以营造轻盈飘逸的精灵效果。所有设置完成后,点击”录制“开始录制动画缓存。该缓存会存储所有必要的动画数据,随后可以将其完整导出到虚幻引擎,保留所有模拟效果的细节。
植被制作
场景中的植物也可以使用 Marvelous Designer 进行建模和模拟。在动画录制过程中,可以实时调整风的方向和角度,打造自然的动态效果。
Marvelous Designer 的关键帧编辑功能可以帮助我们创建无跳帧的完美循环动画,非常适合游戏中的动画序列。与视频编辑工具类似,我们可以将缓存的动画进行剪辑并横向移动。将首帧复制并粘贴到动画末尾,使最后一帧与第一帧自然衔接,形成完美的循环动画。
动画制作完成后,我们使用 LiveSync 插件将精灵的服装和马蹄莲一并导入虚幻引擎。该插件在传输过程中精准保留了材质、动画和纹理效果。
通过 LiveSync 插件传输至虚幻引擎
小精灵的服装制作完成之后,就可以通过LiveSync插件将动画导入至虚幻引擎中了。安装并激活 LiveSync 插件后,确保 Marvelous Designer 处于运行状态,然后在虚幻引擎中打开 LiveSync 编辑器,点击“更新”按钮即可。
Marvelous Designer 中的场景被成功导入到 LiveSync 编辑器。在编辑器中可以看到,系统已根据 Marvelous Designer 中指定的面料自动创建了材质球。我们还可以启用Unified Material 统一材质,并再次点击“更新”按钮,插件会基于 UV 坐标生成统一的材质效果。
LiveSync 插件的功能不仅限于文件的导入。MetaHuman 角色或任何骨骼网格体都可以在虚幻引擎与 Marvelous Designer 间自由导出和导入,使角色服装的创建与模拟变得更加便捷。
在所有素材成功导入后,我们使用虚幻引擎的 Sequencer 工具来制作动画并渲染最终场景。小精灵的服装、翅膀以及马蹄莲等环境元素都在 Marvelous Designer 中完成建模和模拟,并通过 LiveSync 插件同步到虚幻引擎中。
USD导出模拟数据与Chaos Cloth
LiveSync插件适用于虚幻引擎渲染动画、创建可视化视频和游戏影片,还能将Marvelous Designer的环境资产(例如本场景中的马蹄莲)导入虚幻引擎。然而,对于需要使用引擎的解算器进行布料模拟的用户,Marvelous Designer 的 USD 导出模拟数据功能结合虚幻引擎的 Chaos Cloth 功能,将提供更高效的工作流程。接下来,让我们详细了解一下具体步骤:
针对 Chaos Cloth 进行优化: 小精灵的服装具有复杂的多层结构,因此在导入虚幻引擎之前需要进行优化。我们将裙子分为三个部分:骨骼网格体、模拟网格和渲染网格。
自动重拓扑与绑定: 贴身且不需要参加解算的服装部分会蒙皮到人物皮肤上。对于这类服装,可以使用 Marvelous Designer 的 EveryWear 功能实现自动重拓扑与绑定。EveryWear 是一款专为游戏中的虚拟服装设计的自动优化工具集。Marvelous Designer 的四边面(优化)功能可以一键实现拓扑效果,而 EveryWear 工具则帮助减少多边形数量。此外,EveryWear还提供了绑定功能,可设置受影响关节的最大数量。虚幻引擎最多支持8个关节,我们将其设置为8,点击“应用”后,角色身体的权重会自动复制到服装上。通过笔刷工具可以进一步来绘制和平滑权重。若遇到穿插问题,还可以使用雕刻工具集中的修复穿插笔刷进行修复。
小精灵裙子的难点在于其花瓣裙有太多的层级,导致模型过于繁重且复杂。为优化裙子的效果,我们采用的处理方式是通过贴图来表达这些层级关系。首先,将裙子拆分为两个部分并展开。接着创建一个简化的代理模型,并用正投的镜头来渲染不同AOV通道作为贴图。这样大大简化了几何结构,也成功通过贴图表达了层级关系。
(左边的图片是在Marvelous Designer中展开后的裙子;右边的图片则是使用贴图来表达层级效果。)
多边形数量优化
为了进一步优化模型,我们需要减少多边形数量。一个方法是增大 Marvelous Designer 中的粒子间距。在 3D 布料解算中,随机分布的三角形通常能呈现出更自然的弯曲,所以使用三角形网格体而非四边形网格与虚幻引擎的 Chaos Cloth 配合效果更佳,因此无需重新拓扑或转换为四边形,只需提高粒子间距即可有效减少面数。另一个影响因素是增大冲突厚度,从而增加布料层级之间的距离。本例中,冲突厚度从默认的 2.5 mm 调整到 5 mm,以便在 Chaos Cloth 中获得更理想的效果。
USD文件导出
在模型完成优化之后,就可以导出USD文件了。取消勾选虚拟模特的导出,在设置中选择“多个目标“和“厚的”这两个选项,并开启统一的UV坐标。关键的一步是确保启动“包含服装模拟信息”,这样可以保留在Marvelous Designer中使用的所有布料物理参数,如缩率、冲突和很多解算用到的参数,以便在虚幻引擎中的Chaos Cloth进行读取。
在虚幻引擎中设置布料资产
回到虚幻引擎后,双击进入布料资产。导入从 Marvelous Designer 导出的 USD 文件,并选择通过 Marvelous Designer LiveSync 插件导入的骨骼网格,这一步是将服装蒙皮。在预览场景中,确保再次选择相同的骨骼网格。
绘制最大距离属性的权重
接下来我们将为最大距离属性绘制权重,该操作可以控制布料的哪些部分将参与到模拟。权重值为0的区域将不参与解算,而是直接蒙皮到角色身上。使用平缓笔刷可以为权重创建渐变效果。您可以在 2D 或 3D 视图中进行权重绘制。如果在 2D 视图中操作,版片的布局将会与 Marvelous Designer 的 2D 窗口保持一致。为便于权重绘制,导出 USD 文件前请确保版片布局整齐,避免版片之间过于靠近或重叠。绘制完权重后,点击“接受”以预览模拟效果。
我们绘制的权重值可以通过最大距离属性节点进行调整,该节点控制权重的最高值和最低值。降低最高值可以进一步优化模拟效果。
布料物理属性
接下来的三个节点用于设置布料的物理属性。通常,调整布料属性是布料解算中最复杂的部分,但由于我们从 Marvelous Designer 中导出了这些物理属性参数,这一步变得简单许多。启用每个参数旁的箭头图标后,即可直接应用从 Marvelous Designer 导入的布料属性。
此外,点击旁边的衣服图标允许我们使用 Marvelous Designer 中生成的权重图。在 Marvelous Designer 中,不同的版片应用了不同的布料预设,权重图会随 USD 文件一起自动导出。
为了使服装能够与角色身体发生碰撞,我们需要创建一个物理资产(Physics Asset),并将该资产添加到虚幻引擎中的 SetPhysicsAsset 节点中。
布料解算的其他关键节点
- 碰撞属性(SimulationCollisionConfig): 用于控制布料的厚度和摩擦力。启用箭头图标后,将使用从 Marvelous Designer 导入的数值。
- 自碰撞(Self Collision): 默认设置下,为了优化性能,自碰撞功能是禁用的。启用后则可以使用基本的自碰撞球体,也可以通过SimulationSelfCollisionConfig 节点启用更精确但计算量更大的自碰撞。
- 解算器设置节点(SimulationSolverConfig): 这个节点管理解算器的全局设置。增加迭代次数可以提高所有约束和材质的刚度感,但同时也会提高CPU负载。数字分布会在子帧上进行解算,会增加碰撞的精度,当然提高这个数值也会增加CPU负载。可根据帧率适当提高或者降低。
还可以为模拟添加空气动力效果。通过引入风场,使服装在角色静止动画中产生自然的飘动效果,从而让角色看起来更加生动逼真。
细节级别 (LOD) 设置
预设的最后一步是配置 LOD(细节层次)设置。不同的 LOD 将根据相机与角色的距离自动切换。之前配置好的物理属性会连接到最上方的节点。中间的集合链接了Remesh节点,通过Remesh(重置网格)节点来降低网格数。预设中最下面的集合是直接从蒙皮节点接入的,所以不包含动态模拟。如果希望布料模拟在游戏中始终保持激活状态,可以去掉这个最下方集合。
模拟网格体与渲染网格体合并
如果使用了代理模型进行解算,需要通过 删除元素节点(Delete Elements)来删除USD文件的渲染网格体,避免影响渲染。接着导入一个高精度的渲染网格,可以作为静态网格体导入,或通过 USD 导入节点加载。然后,使用 Merge Cloth Collection 节点将模拟网格体与新的渲染网格体合并。
角色蓝图中的最终设置
进入角色蓝图,添加 Chaos Cloth Component 并关联到角色的下方。选择刚刚创建的布料资产,必要时可以调整位置和旋转参数,编辑并保存即可。
接下来,我们就可以在游戏中为服装添加物理属性,呈现实时布料模拟效果了。
无论是制作电影级动画序列还是游戏内资产,Marvelous Designer 的 LiveSync 插件与 USD 导出模拟数据的结合都能提供流畅高效的工作流程。这些工具支持丰富细致的模拟效果和快速迭代,大幅提升了工作效率。
如果您也想尝试这些工具,可以前往我们的官方 CONNECT 商店免费下载本次文章中分享的小精灵模型和服装文件。
这些资源仅供学习交流之用,不可用于商业用途。
快来探索无限创作的可能吧!
请登录写评论。