首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >协程调用堆栈

协程调用堆栈
EN

Stack Overflow用户
提问于 2017-01-03 20:54:10
回答 0查看 249关注 0票数 0

我想使用我的协程来平滑地插值多个GameObjects的位置和旋转,并将脚本附加到它们上。当我启动协程时,平滑部分工作得很好,但我所有的对象都被移动到相同的位置,这不是我想要的。我想知道为什么会这样,以及是否有聪明的方法来处理它。

这是我的协程的样子:

代码语言:javascript
复制
    IEnumerator interpolate_Plate(Transform targ)
{
    float passedTime = 0;

    while (!transform.Equals(targ))
    {
        passedTime += Time.deltaTime;

        transform.position = Vector3.Lerp(transform.position, targ.position, passedTime);
        transform.rotation = Quaternion.Lerp(transform.rotation, targ.rotation,passedTime);
        yield return null;
    }

    yield break;
}

我在考虑创建一个带有列表的主协程,然后调用平滑部分。问题是,对于堆栈上的所有协程调用,targ的引用总是被重置吗?

根据您的请求,调用协程的函数:

代码语言:javascript
复制
public void move_Plate(Transform newPosition)
{
  StartCoroutine(interpolate_Plate(newPosition));
}
EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41444007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档