Поля инспектора
Часть раздела Основы скриптинга в Unity путешествия по Unity на Coddy. Урок 7 из 67.
Поле public скрипта отображается в Inspector под именем скрипта, где любой, кто собирает сцену, может изменить его, не трогая код. Именно поэтому один и тот же скрипт Spinner заставляет вентилятор вращаться быстро, а ветряную мельницу — медленно: код один и тот же, но для каждого объекта задано своё число.
Число в коде — это только начальное значение, которое Unity использует при первом добавлении скрипта. После этого действует значение, сохранённое в сцене. Здесь в коде указано 3, но в Inspector этой ракеты указано 8, поэтому ракета поднимается со скоростью 8 единиц в секунду:
public float speed = 3f; // В Inspector для этой ракеты отображается 8
void Update()
{
transform.position += new Vector3(0, speed * Time.deltaTime, 0);
}Изменение = 3f в коде не меняет ракету, которая уже находится в сцене. С этим хотя бы раз сталкивается большинство начинающих пользователей Unity: если кажется, что число игнорируется, проверьте Inspector. Выберите объект в Hierarchy, чтобы увидеть его поля.
Задание
ЛегкоВ Inspector у лифта для lift задано значение 6, но скрипт игнорирует это поле и всегда поднимает лифт на 2 единицы в секунду. Измени Update(), чтобы лифт поднимался со скоростью lift единиц в секунду независимо от значения в Inspector.
Выбери Elevator в Hierarchy, чтобы увидеть его lift, затем нажми Play и Check.
Попробуйте сами
using UnityEngine;
public class Elevator : MonoBehaviour
{
public float lift = 2f;
void Update()
{
transform.position += new Vector3(0, 2 * Time.deltaTime, 0);
}
}
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы скриптинга в Unity
1Ваш первый скрипт
Привет, UnityРазместите кубДвигайте каждый кадрПоворачивайте каждую секундуУправляйте клавишамиПовторение: управляйте кубом2Инспектор
Поля инспектораSerializeFieldЧисла с плавающей точкой и MathfАтрибуты инспектораПовторение: лифт5Преобразования и иерархия
Родители и детиМасштабПосмотри на объектыДвигайся к точкеПовторение: Луна на орбите6Игровые объекты и компоненты
Ссылки в InspectorПолучение компонентаОтсутствующие компонентыДобавление компонентаRequireComponentПоказать и скрытьПовторение: выключатель света