【Unity】动画播放与GameObject.SetActive()的坑

众所周知,在停止播放一个物体的动画后,该动画对物体的修改会被“撤销”,物体会回到播放动画之前的默认状态。

然而最近遇到了“停止播放动画后物体无法返回正确的默认状态”的问题。。。

测试后发现原来是中途有开关GameObject的行为。在GameObject被SetActive(false)时,该GameObject会保留此时的状态并将其视为物体的默认状态(即,如果一个“人”在播放行走动画的时候被关闭,再次打开时,这个“人”的默认状态就变成了行走的某一帧,无论行走动画是否播放)

解决方案:在关闭物体前先使其回到默认状态(停止动画的播放)

posted @ 2024-06-28 17:23  林骁  阅读(15)  评论(0编辑  收藏  举报