Menu
CoddyTech

Pola inspektora

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

Pole public skryptu pojawia się w Inspector, pod nazwą skryptu, gdzie każda osoba tworząca scenę może je zmienić bez ingerencji w kod. Dzięki temu jeden skrypt Spinner wprawia wentylator w szybki, a wiatrak w powolny ruch: ten sam kod, inna liczba dla każdego obiektu.

Liczba w kodzie to tylko wartość początkowa używana przez Unity przy pierwszym dodaniu skryptu. Później obowiązuje wartość zapisana w scenie. Tutaj kod podaje 3, ale w Inspector tej rakiety widnieje 8, więc rakieta 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 rakiety, która 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

W Inspektorze windy ustawiono lift na 6, ale skrypt ignoruje to pole i zawsze podnosi windę o 2 jednostki na sekundę. Zmień Update(), aby winda podnosiła się z prędkością lift jednostek na sekundę, niezależnie od tego, co ustawiono w Inspektorze.

Wybierz Elevator w Hierarchy, aby zobaczyć jego lift, a następnie kliknij Play i Check.

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);
    }
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy skryptów w Unity