尘埃416 发表于 2020-12-29 10:42

Unity装备模型替换问题?

Unity装备模型替换问题?

惜颜705 发表于 2020-12-29 10:45

分两类替换 1是无角色蒙皮物体的就是这种不随角色动作而形变只做刚体跟随运动的 比如武器 头盔 盾牌。这种比较简单实例化一个设置好parent就好了这个parent 可以刚好是某个骨骼或额外做个虚拟体。2 需要角色蒙皮的比如手套 鞋子 衣服 这种复杂些 需要 做完1过程后的在设置骨骼数据到角色上 因为动画系统驱动的骨骼是角色 不是每个部件 额外事情为了性能往往会合并mesh 合并贴图 合并贴图有个简技巧 什么部位在图集中的区域固定 这样每次替换只要更新对应区域且所有mesh uv固定

就放荡不羁就h 发表于 2020-12-29 10:54

SkinnedMeshRenderer.bones=xxx,这样写不报错,但也不起作用。
正确的方法是
List<Transform> boneList=new List<Transform>();
SkinnedMeshRenderer.bones=boneList.toArray();
如果你的装备包和角色包的模型,在渲染时用的是同一个shader,建议你做submesh的combine,这样还能减少drawcall。
https://www.cnblogs.com/shamoyuu/p/6505561.html

飘渺九月 发表于 2020-12-29 11:03

这样直接替换应该不太行。
不太清楚你这两个模型具体什么样,以及你是怎么把A的mesh分离的。
如果是我做的话。可能会首先比如在blender里把模型的装备拆成一个个独立的mesh,比如单独一把剑,单独一个盾牌。导入unity之后把这些单独的部件挂到人物模型的对应的位置,调整好之后,将它们disable掉,然后通过脚本去控制enable,从而达到换装备的效果。
以上这个方法比较适合独立于模型之外的装备,比如各式手持武器,甚至头盔我觉得也可以凑合一下。但是对于穿在身上的衣服就不太好用了。
之前接触过一个叫做uma的系统,题主可以尝试了解一下unity multipurpose avatar 但是有点门槛,可能需要你花时间看看。
除此之外还有些别的方式,但我也还没搞清楚,就先不说了,免得误人子弟。
页: [1]
查看完整版本: Unity装备模型替换问题?