Unity允许运行时替换SkinnedMeshRenderer的网格来实现自定义角色部件,分两种情况Optimize Game Objects
于 Nonoptimized GameObjects
Optimize Game Objects
是模型Rig选项,开启后骨架不会在场景中存在,而是放入了内部存储。这种情况下只需简单替换mesh就行,不需要重新设置骨骼信息
1 | public static void ReplaceSkinnedMeshOptimized(SkinnedMeshRenderer src, SkinnedMeshRenderer dst) |
对于没有优化的Rig 需要重新设置骨骼信息
1 | public static void ReplaceSkinnedMeshNonOptimized(SkinnedMeshRenderer src, SkinnedMeshRenderer dst) |