Skip to main content

Merge Skinned Mesh / 合并蒙皮网格

将一个或多个 SkinnedMeshRenderer 和 MeshRenderer 合并为同一个 SkinnedMeshRenderer .

你应该将此组件添加到具有未指定网格的 SkinnedMeshRenderer 组件的新游戏对象中。(参考分类:蒙皮网格编辑组件)

好处

合并 SkinnedMeshRenderer 将减少蒙皮网格(变形网格)的数量。 此外,它可以合并使用相同材质球的材质槽,有助于降低渲染成本。

注意

此组件将会让动画无法单独打开或关闭网格,但与材质球相关的动画仍可工作,无需修改。

此组件将重新配置网格、材质球、BlendShape 和绑定,其它设置不会被修改。请编辑附加在与 MergeSkinnedMesh 相同游戏组件上的 SkinnedMeshRenderer 组件,重新设置 Anchor Override 等。

此组件适用于合并你的衣服和身体网格,但不适用于头部网格,因为 BlendShape 会对性能产生影响。BlendShape 的性能消耗与顶点和 BlendShape 的数量成正比。合并 SkinnedMesh 会增加顶点数量,而面部网格通常有非常多的 BlendShape。因此,合并头部网格并不是一个很好的主意。

另外,基于同样的理由,你应该冻结并移除身体/衣服网格中不会被改变的 BlendShape。您可以使用 Freeze BlendShape 组件来冻结并移除 BlendShape。将此组件添加到需要被合并的 SkinnedMeshRenderer 的游戏对象中,也可添加到合并后的 SkinnedMeshRenderer 的游戏对象中,以冻结并移除 BlendShape。此外,您还可以使用 Trace and Optimize 组件的 Automatically Freeze BlendShape 功能来获得相同的效果。

Trace And Optimize 将自动执行相同的过程,因此在某些情况下,你不需要主动使用此组件。

设置

component (2).png

Skinned Renderers / 蒙皮渲染器

要合并的 SkinnedMeshRenderer 列表。

将游戏对象拖动到底部的 None 元素以添加需要被合并的 SkinnedMeshRender,若要移除,重置为 None 即可。

Static Renderers / 静态渲染器

要合并的 MeshRenderer 列表(即不带有蒙皮绑定、Blendshape 的网格)。

将游戏对象拖动到底部的 None 元素以添加需要被合并的 MeshRender, 若要移除,重置为 None 即可。

Remove Empty Renderer GameObject / 移除空的渲染器游戏对象

如果选中此复选框,并且包含 SkinnedMeshRenderer 的游戏对象除了 SkinnedMeshRenderer 以外没有其它组件,则该游戏对象将被从层级中移除。

Skip Enablement Mismatched Renderers / 跳过启用不匹配的渲染器

如果选中此复选框,则在构建时,渲染器的启用状态与目标渲染器不匹配的情况下,将不会被合并。

Merge Materials / 合并材质球

如果组件发现一些渲染器中使用了多个材质球,则这些材质球将在此处列出。

选中 Merge,将会使这些材质槽(子网格)合并成同一个材质槽。这样可以减少绘制调用。