在一个对象中绘制一条线c#

您好我正在使用此代码绘制一个跟在对象后面的行

Debug.DrawLine(new Vector3(gameObject.transform.position.x, gameObject.transform.position.y, gameObject.transform.position.z), new Vector3(prevPosition_x, prevPosition_y, prevPosition_z), Color.red,1.0f); prevPosition_x = gameObject.transform.position.x; prevPosition_y = gameObject.transform.position.y; prevPosition_z = gameObject.transform.position.z; 

然而,这并没有在构建中绘制。 有没有人知道如何在不使用内置线或跟踪渲染器的情况下执行此操作。 我知道它可以用gl完成但是没有线索如何做到这一点。

任何帮助表示赞赏

我相信Debug.DrawLine只适用于场景编辑器。

有几种方法可以画线,GL绝对是其中之一。 还有Vectrosity 。

唉,您可以通过生成自己的线网格并移动顶点来自己完成。

希望能帮助到你。

正如Xerosigma所说,Debug.DrawLine仅适用于Editor,因为它的目的是调试脚本,而不是为用户提供可视化。 另一个问题是,通过这种方式,您将只创建将呈现一帧的行,而当前位置之前的行仅相差一帧。 另一方面,您可能希望跟踪不依赖于帧速率。

我认为你会在Unity中找到适合你情况的TrailRenderer组件。 我已经在我的一个hobbie项目中使用过它,它运行得很好。

我认为这不是最好的方式,但应该有效

http://rockonflash.wordpress.com/2010/04/17/how-to-do-lasers-in-unity3d/

Debug.DrawLine仅适用于场景窗口