我自己解决了,之前出现不能共用的原因是模型里面只有一个AnimationClip,由于动画由多个动画组成,而且有的需要循环,有的只需要执行一次,从这里面产生了分歧,比如让其中的一个模型执行死亡动画,为了能触发动画完成回调,需要将AnimationClip的islooping设置为false,这样其它模型的idle状态就消失了。
为了解决这个问题,我们需要将AniamtionClip永久设置为true,让其无限循环,那么,执行一次的动画如何退出呢?
那就需要通过
state.addScript(AnimatorStateScript);
添加脚本,在脚本中,判断
animator.getCurrentAnimatorPlayState().normalizedTime
是否已经大于等于1,如果大于等于1则当前执行的动画已经运行完成了一个循环,我们可以手动触发切换到其它动作或者停止动画即可。
期望能帮助到其它小伙伴,毕竟卡了我一天。