Управляй клавишами
Часть раздела Основы скриптинга в Unity путешествия по Unity на Coddy. Урок 12 из 85.
Input.GetKey(KeyCode.Space) возвращает true в каждом кадре, пока клавиша пробела нажата, и false в противном случае. Проверяй это в Update() и перемещай объект, только когда условие выполняется, — так игрок будет управлять объектом.
Этот ящик поднимается со скоростью lift единиц в секунду, пока нажата клавиша пробела. Time.deltaTime обеспечивает скорость в единицах в секунду, как и в предыдущем уроке:
public float lift = 2f;
void Update()
{
if (Input.GetKey(KeyCode.Space))
{
transform.position += new Vector3(0, lift * Time.deltaTime, 0);
}
}У каждой клавиши есть соответствующий код KeyCode: KeyCode.UpArrow, KeyCode.W, KeyCode.Return и так далее. Сначала щёлкни по окну игры, чтобы оно получало нажатия клавиш. Примечание для Unity 6: в новых проектах используется новая Input System, и Input.GetKey вызывает ошибку, пока для параметра Active Input Handling (Project Settings, Player) не задано значение Both.
Задание
ЛегкоПозволь игроку управлять кубом с помощью клавиш со стрелками.
- В
Update(), покаInput.GetKey(KeyCode.RightArrow)имеет значение true, прибавляйnew Vector3(speed * Time.deltaTime, 0, 0)кtransform.position. - Пока удерживается
KeyCode.LeftArrow, вычитай тот жеVector3с помощью-=.
Нажми «Играть», щёлкни по игровому окну и удерживай клавиши со стрелками: куб скользит вправо и влево. Затем нажми «Проверить».
Попробуйте сами
using UnityEngine;
public class Steering : MonoBehaviour
{
public float speed = 4f;
void Update()
{
// Стрелка вправо: движение вправо. Стрелка влево: движение влево.
}
}
Все уроки раздела Основы скриптинга в Unity
1Основы C# в Unity
Привет, UnityПеременныеДля дробных чисел нужна fТекст в консолиПеременные, которые запоминаютЕсли и иначеСравнение чиселПовторение: сборщик монет7Циклы и методы
Повторение с forЦиклы внутри цикловНапишите методМетоды, которые возвращают значениеМассивыПовторение: лестница10Поиск объектов
Поиск по имениТегиПоиск по типуСсылки лучше поискаNull в UnityПовторение: ближайшая монета13Проект: уворачиваемся от блоков
БегунБлоки с неба2Заставь двигаться
Размести кубДвигай каждый кадрПоворачивай каждую секундуУправляй клавишамиПовторение: веди куб5Векторы
Сложение векторовНаправленияЛокальное и мировое пространствоСкорость по диагоналиРасстояние между объектамиVector3 — это структураПовторение: пилот дрона8Игровые объекты и компоненты
Ссылки в InspectorПолучение компонентаОтсутствующие компонентыДобавление компонентаRequireComponentПоказ и скрытиеПовторение: выключатель светаПотренируйтесь самостоятельно: Песочница Unity