Unity 2019.3.7f1 .. 与我合作的艺术家使用 mecanim 系统 Animator 组件为一些 UI 内容制作了一些动画。
我用
Animator.SetTrigger("ParamaterName")
带有动画组件的游戏对象正在被动画化,我的一些脚本可能会禁用这些游戏对象。这可能在动画播放时发生。所以如果动画开始播放,假设动画使按钮变大,那么游戏对象就会被禁用。当游戏对象重新启用时(动画不再播放)它仍然很大。有没有办法告诉动画师恢复正常?我在 GameObject 上的脚本中的 onEnable 和 OnDisable 中尝试过类似的东西
Animator.keepAnimatorControllerStateOnDisable = false
Animator.Play("normalState",0,0f);
Animator.playbackTime = 0f;
Animator.Update(0f);
这个 mecannim 东西看起来就像一个黑匣子,它是如何工作的。我不熟悉它,因为我一直只是使用我自己的库来为我多年来一直使用的东西制作动画。
编辑:这是解决方案......
private void Start()
{
Animator.keepAnimatorControllerStateOnDisable = true;
}
private void OnDisable()
{
Animator.Play("normalState",0,0f);
}