Menu
CoddyTech

Pola inspektora

Część sekcji Podstawy skryptów w Unity ścieżki Unity w Coddy. Lekcja 14 z 85.

Pole public skryptu pojawia się w Inspector, pod nazwą skryptu, gdzie każdy, kto buduje scenę, może je zmienić bez ingerowania w kod. Dzięki temu ten sam skrypt Spinner sprawia, że jeden wentylator obraca się szybko, a wiatrak wolno: ten sam kod, inna liczba dla każdego obiektu.

Liczba w kodzie to tylko wartość początkowa, której Unity używa przy pierwszym dodaniu skryptu. Później decyduje wartość zapisana w scenie. Tutaj kod podaje 3, ale w Inspectorze tego pocisku widnieje 8, więc pocisk wznosi się z prędkością 8 jednostek na sekundę:

public float speed = 3f;   // Inspector pokazuje 8 dla tej rakiety

void Update()
{
    transform.position += new Vector3(0, speed * Time.deltaTime, 0);
}

Zmiana = 3f w kodzie nie zmienia pocisku, który już znajduje się w scenie. Większość początkujących użytkowników Unity natrafia na ten problem przynajmniej raz: gdy wygląda na to, że liczba jest ignorowana, sprawdź Inspector. Wybierz obiekt w Hierarchy, aby zobaczyć jego pola.

challenge icon

Wyzwanie

Łatwy

Spraw, by winda unosiła się z prędkością ustawioną w Inspectorze.

  1. W Update() zastąp 2 polem: lift * Time.deltaTime.
  2. Pozostaw public float lift = 2f; bez zmian: Inspector ustawi lift na 6.

Naciśnij „Graj”: winda unosi się z prędkością 6 jednostek na sekundę. Następnie naciśnij „Sprawdź”.

Spróbuj swoich sił

using UnityEngine;

public class Elevator : MonoBehaviour
{
    public float lift = 2f;

    void Update()
    {
        transform.position += new Vector3(0, 2 * Time.deltaTime, 0);
    }
}

Wszystkie lekcje w sekcji Podstawy skryptów w Unity

Poćwicz samodzielnie: Edytor online Unity