用unity c#在对象后面画一条线

本文关键字:一条 对象 unity | 更新日期: 2023-09-27 18:09:23

您好,我正在使用此代码在对象后面绘制一条线

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;

然而,这并没有绘制一个构建。有没有人知道如何做到这一点,而不使用内置的行或trail渲染器。我知道这可以用gl来完成,但是我不知道怎么做。

感谢您的帮助

用unity c#在对象后面画一条线

我相信调试。绘制线只在场景编辑器中工作。

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

唉,你可以自己做一些努力,通过生成自己的线网格和移动顶点。

希望能有所帮助。

正如施乐所说,调试。DrawLine只在编辑器中工作,因为它的目的是调试脚本,而不是为用户提供可视化。另一个问题是,这样,你只会创建将渲染一帧的线条,而之前的当前位置只会相差一帧。另一方面,您可能希望跟踪不依赖于帧率。

我认为你会发现TrailRenderer组件在Unity适合你的情况。我已经在我的一个业余项目中使用了它,它工作得很好。

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

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

调试。DrawLine仅适用于场景窗口