Как создать светофор в unity

455
09 ноября 2017, 03:14

Наткнулся на код рабочего светофора, но не могу понять как он работает.

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 в данном случае

Answer 1

Согласно документации, Debug.DrawLine рисует линию между двумя указанными точками.

  • Первый аргумент - координаты начала линии
  • Второй аргумент - координаты конца линии
  • Третий - цвет линии

this.transform.position - позиция объекта на котором висит этот самый скрипт

controllerPosition - позиция объекта, который будет добавлен, например через инспектор (правда пока непонятно где он у вас, ибо через инспектор вы его не добавите имея атрибут HideInInspector)

linkColor - тот самый цвет. Аналогично предыдущей переменной - нигде в коде у вас цвет не присваивается на данный момент

READ ALSO
Симуляционная модель

Симуляционная модель

Не знаю как сформулировать корректный заголовок и вследствие этого как загуглить

246
Обработка изображений. Реализовать пороговый фильтр для ч\б на c#

Обработка изображений. Реализовать пороговый фильтр для ч\б на c#

Есть черно-белое изображение, представляющее собой двумерный массив, где каждый его элемент - это пиксель (значение от 00 до 1

468
Запускать программу для работы с файлом при двойном клике на файл

Запускать программу для работы с файлом при двойном клике на файл

Делаю программу на Windows Forms, которая работает с файлами определённого расширенияПри старте открывается диалоговое окно, где я выбираю нужный...

280
Экспорт таблицы из Excel в Word файл

Экспорт таблицы из Excel в Word файл

Столкнулся с трудностью, нужно экспортировать таблицу из excel файла в wordМожет кто подсказать, как это реализовать? (может быть у кого нибудь...

229