我创建了一个简单的 lerp 动画,它使用以下代码将对象从一个地方移动到另一个地方:
public IEnumerator Move(Vector3 position, Transform transform, float animationTime = 1)
{
float timePassed = 0;
transform.position = Vector3.Lerp(startPos, position, timePassed /animationTime);
timePassed += Time.deltaTime;
yield return null;
}
我从另一个脚本中调用它。但我希望它在动画之后做点什么。
如果我在动画之前创建一个Coroutine
并使用结束,它会导致错误。yield return WaitForSeconds(animationTime);
Coroutine
我也尝试过创建变量来计算经过的时间(就像在动画中一样),但无济于事……</p>
我究竟做错了什么
编辑: 我无法更改 Move 函数,因为它在其他类中使用,我想让它尽可能通用