Я следовал руководству, чтобы нарисовать линию, используя положение мыши, линия будет нарисована внутри холста. Но когда он запускался, линия не проходила! и это дает мне эту ошибку:
NullReferenceException: ссылка на объект не установлена для экземпляра объекта
Что не так в моем коде?
Вот скрипт:
public GameObject Line;
GameObject CurrentLine;
LineRenderer linerenderer;
private List<Vector2> FingerPositions;
public Canvas Can;
void Update()
{
if (Input.GetMouseButtonDown(0))
{
CreateLine();
}
if (Input.GetMouseButton(0))
{
Vector2 tempfingerpos = Camera.main.ScreenToWorldPoint(Input.mousePosition);
if (Vector2.Distance(tempfingerpos, FingerPositions[FingerPositions.Count - 1]) > 0.1f)
{
UpdateLine(tempfingerpos);
}
}
}
void CreateLine()
{
CurrentLine = Instantiate(Line, Vector3.zero, Quaternion.identity);
linerenderer = CurrentLine.GetComponent<LineRenderer>();
FingerPositions.Clear();
FingerPositions.Add(Camera.main.ScreenToWorldPoint(Input.mousePosition));
FingerPositions.Add(Camera.main.ScreenToWorldPoint(Input.mousePosition));
linerenderer.SetPosition(0, FingerPositions[0]);
linerenderer.SetPosition(0, FingerPositions[1]);
CurrentLine.transform.SetParent(Can.transform, false);
}
void UpdateLine(Vector2 NewFingerPos)
{
FingerPositions.Add(NewFingerPos);
linerenderer.positionCount ++;
linerenderer.SetPosition(linerenderer.positionCount - 1, NewFingerPos);
}