【发布时间】:2019-06-16 03:01:28
【问题描述】:
我在 Unity 中为 Panel 元素创建了动画。之后,我将元素从其原始位置移开。
此外,该元素被锚定在屏幕底部,以便无论屏幕大小如何都可以停留在那里。
问题是,当我点击Play 进行调试时,我的元素突然移动到另一个位置,我相信这是我创建动画时的原始位置。
我也许可以再次创建动画。但是,这并不能解决问题,因为不同的屏幕分辨率会稍微改变位置,因此元素的期望位置会因为动画而再次改变。
我不能创建一个独立于位置的动画吗?在积极的情况下,如何?在否定的情况下,我该如何解决这个问题?
【问题讨论】:
-
一旦某个属性有任何关键帧,
Animator将始终覆盖您的脚本值(Animator 在所有更新后运行)。为了避免它,你可以例如不需要时只需打开Animator。或者,使用yield return new WaitUntilEndOfFrame在 IEnumerator 中运行您的定位,以确保这是将为该帧执行的最后一个代码。 -
但是当我再次打开它时,它会转到动画位置,它在运行时对我无效。我需要它可以在元素的当前位置播放。
-
@derHugo 您能否提供有关
IEnumerator方法的更多文档或解释?
标签: unity3d