首页 > 解决方案 > Debug.DrawLine:为什么线在持续时间后不会消失?

问题描述

考虑以下:

private void Update()
{
    Vector3 start = transform.position;
    Vector3 end = start + (gazeDistance * transform.forward);
    Debug.DrawLine(start, end, Color.green, 1f, false);
}

这条线显示了玩家移动时玩家的当前视图方向(在场景视图中)。
我觉得上面的代码有权期望每一行在1f第二个之后消失。但是所有的线条都会永远存在,这会导致Color.green一团糟。然而,在其他项目中,这一直正常工作。

因此,我发现自己处于一种相当痛苦的境地,尊敬的读者,我想在您的帮助下摆脱困境。提前感谢!

标签: c#unity3d

解决方案


对于遇到此问题的未来用户:

Debug.DrawLine 的持续时间参数Time.timeScale 影响。如果将 Time.timeScale 设置为 0,则持续时间大于 0 的线条不会消失。


推荐阅读