Unity animation state normalizedtime说明

animator所处的state播放完毕,如果未进入下一个state,且没有循环,则该state的normalizedtime会大于1(state末尾)或小于0(负数,倒播到开头处,speed为负数);如果此时触发条件进入下一个state,则会由于normalizedtime不是1,或0,有一段时间延迟(1.xxx-->1或-0.xxx---->0),要解决滞后,可以这样:

获取normalizedtime:animator.getcurrentanimatorstateinfo(layer).normalizedtime;

animator.play("statename".layernumber,normalizedtime);设置状态所处特定帧;

你可能感兴趣的:(Unity3D)