
上次说到了这个插件的骨骼模拟的功能介绍和心得,今天呢,我就来分享一下这个插件的顶点模拟相关内容。这个软件在使用之前呢(忘记的小伙伴们,可以去看一下第一篇说的),需要确保电脑里的Unity版本是Unity2018.4.0(LTS)或更高的版本,然后同时确保工程中有Burst和Jobs这两个组件(Package Manager里面下载)

组件介绍:
好了~那我就继续了,介绍一下完成布料的顶点模拟的三个组件
— MagicaRenderDeformer —
渲染变形器,这个是需要挂在模型网格上的组件,可以使网格变形,进行布料模拟
— MagicaVirtualDeformer —
虚拟变形器,配合MagicaRenderDeformer使用,可将挂有MagicaRenderDeformer组件的模型网格进行重建网格,主要用途呢,是将模型外围包裹一层封套,这样的好处呢,就是能将定点数过多或者有复杂层级的衣服更加的具有可控性,降低穿模的可能性
— MagicaMeshCloth —
顶点模拟组件,在网格顶点上做到布料模拟,因为它是以顶点为单位的模拟,所以效果肯定会比骨骼模拟的会好很多,对于裙子,旗帜,窗帘的这些很柔软的东东的模拟,是最理想的组件,当然,性能的消耗也会比骨骼模拟大很多~

组件用法:
MagicaMeshCloth适用于Mesh Renderer 和Skinned Mesh Renderer两种网格顶点,MagicaMeshCloth的计算优先级也是高于蒙皮的,举个栗子哈,当MagicaMeshCloth赋予在已经蒙皮好的裙子上时,此时裙子的蒙皮信息会被MagicaMeshCloth覆盖掉的,一切运算都是MagicaMeshCloth优先的。
好了,介绍完组件的之后,那我们就开始实际使用一下喽~
首先呢,在需要参与运算的网格上挂上MagicaRenderDeformer这个组件,Render Deformer在附加时会自动创建数据,因此无需单独按下[Create]按钮

如果红框内的白色叹号提示:模型不能被读写,那说明模型的可读写选项没有被打开,不着急~

我们找到并且选择到这个FBX文件,将它的“Read/write Enabled”选项勾上

好了,第一步完成了,接下来呢,创建一个MagicaVirtualDeformer(虚拟变形器)
右键单击“ Hieraruchy”窗口,然后从菜单中选择“ Magica Virtual Deformer”,如下所示, 将创建一个虚拟变形器对象


虚拟变形器具有合并渲染变形器,减少顶点并将高多边形网格转换为低多边形的功能,它会生成一个虚拟网格,注意的是,这个虚拟网格仅存储在内存里。
然后,这个虚拟网格仅用于布料模拟,因此不会减少实际网格。
如果网格物体的顶点数过高的话,负载会很高,模拟的也不会很稳定,所以呢,需要调节虚拟网格变形器的参数来调整顶点。
同时也要时刻观察虚拟网格的状态,以确保虚拟网格的顶点数能正常的模拟布料飘动。
第二步完成之后,就能接下来进行第三步了,右键单击“ Hieraruchy”窗口,然后从菜单中选择“Magica Mesh Cloth”,如下所示,
将创建一个MeshCloth对象


这个组件和第一篇说的骨骼模拟组件的面板差不多的

首先,设置VirtualDeformer进行操作,还记得第二步我们创建的 Magica Virtual Deformer嘛?将这个组件拖入进去

接下来呢,需要编辑虚拟网格物体中哪些顶点被移动以及哪些顶点是固定的。点的编辑模式和MagicaBoneCloth原理是一样的(绿色的Move point就是代表参与运算的顶点;红色的Fixed Point代表锚点,比如窗帘布,最上面的那一排挂点就是代表这红色的点;灰色的Invalid Point代表的是无效顶点)
按[Start Point Selection]按钮进入编辑模式
顶点模拟也有些内置好的参数,可以从资源管理器中选择内置预设的[MeshCloth_Skirt.json]并加载它。 内置预设位于MagicaCloth / Preset文件夹中。


经完成了一系列设置,请按[Create]按钮来创建数据

如果没有问题的话,MeshCloth的状态图标将变为“白色”,并显示信息,成功!

好啦,到了这一步基本就完成啦~ 感受飘逸的布料吧~~
