如何手动创建一个工作的蒙皮网格渲染器?

How to create a working Skinned Mesh Renderer manually?

当手动创建一个游戏对象并添加一个蒙皮网格渲染器组件时,即使在设置中选择了模型,它也没有显示任何应该显示我的模型的东西。将带有动画的 fbx 资产拖入场景时,它会自动创建必要的 Skinned Mesh Renderer 组件,这个组件显示模型。即使我的手动设置与 Unity 生成的设置相同,它仍然不会显示模型,除非我将设置从工作组件复制到非工作组件。这里发生了什么?是否有一些我看不到的设置正在被复制?

编辑:附加信息

Unity 版本 2020.3.17f1

重现步骤:

  1. 创建游戏对象

  2. 创建 Skinned Mesh Renderer 组件

  3. 我这里设置的是mesh和root bone,还有materials

  4. 网格在游戏或场景视图中不显示

  5. 将资产拖到场景中以创建一个游戏对象

  6. 这样做可以正确显示

  7. 复制设置

  8. 粘贴设置

  9. 删除不需要的对象

  10. 正在显示原始对象

我使用 C# 将各种属性从工作属性复制到非工作属性,直到出现一个使其显示骨骼。蒙皮网格渲染器的检查器中没有骨骼选项卡,因为它似乎从视图中隐藏了。

为了更简单地重复,在 C# 中设置 SkinnedMeshRenderer.bones 是使模型显示的原因。