Steruj za pomocą klawiszy
Część sekcji Podstawy skryptów w Unity ścieżki Unity w Coddy. Lekcja 12 z 85.
Input.GetKey(KeyCode.Space) ma wartość true w każdej klatce, gdy spacja jest wciśnięta, a w przeciwnym razie ma wartość false. Sprawdzaj to w Update() i poruszaj obiektem tylko wtedy, gdy zwraca wartość „tak” — wtedy gracz steruje obiektem.
Ta skrzynia unosi się z prędkością lift jednostek na sekundę, gdy spacja jest wciśnięta. Time.deltaTime utrzymuje prędkość na sekundę, tak jak w poprzedniej lekcji:
public float lift = 2f;
void Update()
{
if (Input.GetKey(KeyCode.Space))
{
transform.position += new Vector3(0, lift * Time.deltaTime, 0);
}
}Każdy klawisz ma przypisaną wartość KeyCode: KeyCode.UpArrow, KeyCode.W, KeyCode.Return i tak dalej. Najpierw kliknij widok gry, aby klawisze były do niego przekazywane. Uwaga dotycząca Unity 6: nowe projekty korzystają z nowego systemu wejścia, a Input.GetKey powoduje tam błąd, dopóki opcja Active Input Handling (Project Settings, Player) nie zostanie ustawiona na Both.
Wyzwanie
ŁatwyPozwól graczowi sterować sześcianem za pomocą klawiszy strzałek.
- W
Update(), gdyInput.GetKey(KeyCode.RightArrow)ma wartość true, dodajnew Vector3(speed * Time.deltaTime, 0, 0)dotransform.position. - Gdy klawisz
KeyCode.LeftArrowjest wciśnięty, odejmij ten samVector3za pomocą-=.
Naciśnij „Graj”, kliknij grę i przytrzymaj klawisze strzałek: sześcian przesuwa się w prawo i w lewo. Następnie naciśnij „Sprawdź”.
Spróbuj swoich sił
using UnityEngine;
public class Steering : MonoBehaviour
{
public float speed = 4f;
void Update()
{
// Strzałka w prawo: poruszaj się w prawo. Strzałka w lewo: poruszaj się w lewo.
}
}
Wszystkie lekcje w sekcji Podstawy skryptów w Unity
1Podstawy C# w Unity
Witaj, UnityZmienneLiczby dziesiętne wymagają fTekst w konsoliZmienne, które pamiętająIf i elsePorównywanie liczbPowtórka: Zbieracz monet4Wejście
Naciśnięty, przytrzymany, zwolnionyOsiePrzyciski z nazwamiPrzyciski myszyPowtórka: naładowany skok7Pętle i metody
Powtarzaj za pomocą forPętle wewnątrz pętliNapisz metodęMetody, które zwracają wynikTablicePowtórka: schody10Wyszukiwanie obiektów
Wyszukiwanie po nazwieTagiWyszukiwanie po typieReferencje lepsze niż wyszukiwanieNull w UnityPowtórka: najbliższa moneta13Projekt: Unikaj bloków
BiegaczBloki z nieba2Wpraw to w ruch
Umieść sześcianPoruszaj w każdej klatceObracaj co sekundęSteruj za pomocą klawiszyPodsumowanie: Prowadź sześcian5Wektory
Dodawanie wektorówKierunkiPrzestrzeń lokalna i globalnaPrędkość po przekątnejOdległość między obiektamiVector3 to strukturaPodsumowanie: pilot drona8Obiekty gry i komponenty
Referencje w InspectorzePobieranie komponentuBrakujące komponentyDodawanie komponentuRequireComponentPokazywanie i ukrywaniePowtórka: włącznik światłaPoćwicz samodzielnie: Edytor online Unity