Collider位置和角色的动作不一致会导致Mesh互相镶嵌,让游戏失真。 想象一扇门的Collider没随它打开的动画移动,结果就是你看着门开着却穿不过去。 而我遇到的情况是:
![【Unity】Collider随骨骼动画运动 - 鬼武者 - FIGHTING FOR GLORY !](http://img612.ph.126.net/VzjBcA5C0B5gOStsQTK0bA==/1973139586743516691.png)
角色在执行跑动动画时头部偏离了它的Collider, 假如前面是堵墙她的头部就会没有阻挡的钻进去。要解决这个问题,需要让Collider随动画一起移动。Unity中设定的Collider会随着Prefab的Transfrom运动, 但播放动画时只是模型的Mesh随骨骼移动, 因此需要将Collider和头部的骨骼关联起来。
选择需要关联的骨骼
![【Unity】Collider随骨骼动画运动 - 鬼武者 - FIGHTING FOR GLORY !](http://img617.ph.126.net/0oBTrjMm0SL3LAV0GuyYNw==/1662391212455457311.png)
为骨骼添加Collider,并调整位置。
![【Unity】Collider随骨骼动画运动 - 鬼武者 - FIGHTING FOR GLORY !](http://img.ph.126.net/NX832Ml6wmAoTUsvfMt1hg==/3219510783618277883.png)
相同方法将身体的Collider也关联到骨骼。
问题解决。
![【Unity】Collider随骨骼动画运动 - 鬼武者 - FIGHTING FOR GLORY !](http://img612.ph.126.net/Hpor7ytl1_BI21CYmrN-bA==/1979613511208362889.png)
关联阅读: