为什么在游戏视图中行渲染器不起作用?

时间:2018-09-11 05:56:31

标签: c# unity3d draw

我知道Debug.Drawline用于在场景视图中进行测试。线条渲染器应该在游戏视图中正常工作吗?当我用两个球体测试线渲染器时,它可以工作,但是当我尝试使用相机和一个球体时,它无法显示。有什么想法吗?

public class Lines : MonoBehaviour {


public Transform sp1;
public Transform sp2;
public Camera cam;

public GameObject Lineprefab;
LineRenderer lins;

// Use this for initialization
void Start () 
{
    spawngenerator();
}

// Update is called once per frame
void Update ()
{

    //Debug.DrawLine(cam.transform.position, sp2.position,Color.green);
   // Debug.DrawRay(cam.transform.position, sp2.position, Color.green,100f);
    lins.SetPosition(0, sp1.position);
    lins.SetPosition(1, sp2.position);

  //  sp1.Translate(Vector3.right, Space.World);

}


void spawngenerator()
{

    GameObject newline = Instantiate(Lineprefab);
     lins = newline.GetComponent<LineRenderer>();



    }
}

enter image description here

在上面的图片中,“行渲染器”同时在场景和游戏视图中显示。仅在场景视图下方。为什么?

enter image description here

enter image description here

Working

1 个答案:

答案 0 :(得分:1)

Line Renderer没有厚度

由于您的线(从相机的角度来看)与视角平行,因此线的方向不会导致其大小超过0像素(请像在线尾看似死线那样思考)一张完美的平纸)。

您可能想将摄像机的摄像机末端移到摄像机的实际位置下方 ,下面的多少取决于项目的需要和您的喜好。