Почему линейный рендер не работает в режиме просмотра игры? - PullRequest
0 голосов
/ 11 сентября 2018

Я знаю, что Debug.Drawline используется для тестирования в режиме просмотра сцены. Линейный рендерер должен работать в режиме Game view, верно? Когда я тестировал линейный рендерер с двумя сферами, он работал, но когда я пытался сделать это камерой и одной сферой, он не показывал. Есть идеи?

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

На приведенном выше рисунке Line Renderer отображается как в режиме просмотра сцены, так и в игре. Ниже только в режиме просмотра сцены. Почему?

enter image description here

enter image description here

Working

1 Ответ

0 голосов
/ 11 сентября 2018

Линейный рендерер не имеет толщины

Поскольку ваша линия (с точки зрения камеры) параллельна углу обзора, не существует ориентации линии, из-за которой ее размер был бы больше 0 пикселей (представьте, что она выглядит мертвой на конце кусок совершенно плоской бумаги).

Вы, вероятно, хотите переместить конец камеры на свою линию вниз ниже фактического местоположения вашей камеры, насколько ниже будет зависеть от потребностей вашего проекта и ваших собственных предпочтений.

...