Наткнулся на код рабочего светофора, но не могу понять как он работает.
using UnityEngine;
using System.Collections;
[ExecuteInEditMode]
public class QT_TrafficLight : MonoBehaviour {
[HideInInspector]
public GameObject BulbGreen,BulbYellow,BulbRed;
[HideInInspector]
public bool showLinks=false;
[HideInInspector]
public Color linkColor;
[HideInInspector]
public Vector3 controllerPosition;
[HideInInspector]
public GameObject[] Lights = new GameObject[3];
// Use this for initialization
void Awake () {
foreach(Transform t in transform)
{
if(t.name.Contains("BulbGreen"))
BulbGreen = t.gameObject;
if(t.name.Contains("BulbRed"))
BulbRed = t.gameObject;
if(t.name.Contains("BulbYellow"))
BulbYellow = t.gameObject;
if(t.name.Contains("Light-BulbGreen"))
Lights[0]=t.gameObject;
if(t.name.Contains("Light-BulbYellow"))
Lights[1] = t.gameObject;
if(t.name.Contains("Light-BulbRed"))
Lights[2] = t.gameObject;
}
}
// Update is called once per frame
void Update () {
if(showLinks)
{
Debug.DrawLine(this.transform.position,controllerPosition,linkColor);
}
}
}
Объясните, пожалуйста.
Что делает Debug.DrawLine в данном случае
Согласно документации, Debug.DrawLine рисует линию между двумя указанными точками.
this.transform.position - позиция объекта на котором висит этот самый скрипт
controllerPosition - позиция объекта, который будет добавлен, например через инспектор (правда пока непонятно где он у вас, ибо через инспектор вы его не добавите имея атрибут HideInInspector)
linkColor - тот самый цвет. Аналогично предыдущей переменной - нигде в коде у вас цвет не присваивается на данный момент
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости