Steuere mit den Tasten
Teil des Abschnitts Grundlagen des Scripting in Unity der Unity-Journey von Coddy. Lektion 5 von 67.
Input.GetKey(KeyCode.Space) ist in jedem Frame true, solange die Leertaste gedrückt gehalten wird, und andernfalls false. Frage es in Update() ab und bewege das Objekt nur, wenn es Ja sagt – dann steuert der Spieler das Objekt.
Diese Kiste steigt mit lift Einheiten pro Sekunde, solange die Leertaste gedrückt gehalten wird. Time.deltaTime sorgt wie in der letzten Lektion dafür, dass die Geschwindigkeit pro Sekunde gilt:
public float lift = 2f;
void Update()
{
if (Input.GetKey(KeyCode.Space))
{
transform.position += new Vector3(0, lift * Time.deltaTime, 0);
}
}Jede Taste hat einen KeyCode: KeyCode.UpArrow, KeyCode.W, KeyCode.Return und so weiter. Klicke zuerst auf die Spielansicht, damit die Tastenanschläge dort ankommen. Ein Hinweis zu Unity 6: Neue Projekte verwenden das neue Input System, und Input.GetKey verursacht dort einen Fehler, bis Active Input Handling (Project Settings, Player) auf Both gesetzt ist.
Aufgabe
EinfachLass den Spieler den Würfel steuern: Solange die rechte Pfeiltaste gedrückt wird, bewegt er sich mit speed Einheiten pro Sekunde nach rechts (entlang +x), und solange die linke Pfeiltaste gedrückt wird, bewegt er sich mit derselben Geschwindigkeit nach links. Wenn keine Taste gedrückt wird, bleibt er stehen.
Drücke auf Play, klicke auf das Spiel und probiere die Pfeiltasten aus. Klicke dann auf Check.
Probier es selbst
using UnityEngine;
public class Steering : MonoBehaviour
{
public float speed = 4f;
void Update()
{
// Rechtspfeil: nach rechts bewegen. Linkspfeil: nach links bewegen.
}
}
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen des Scripting in Unity
1Dein erstes Skript
Hallo, UnityPlatziere den WürfelBewege dich in jedem FrameDrehe dich jede SekundeSteuere mit den TastenRückblick: Steuere den Würfel4Vektoren
Vektoren addierenRichtungenLokaler und globaler RaumDiagonale GeschwindigkeitAbstand zwischen ObjektenVector3 ist ein StructRückblick: Drohnenpilot7Projekt: Fang den Stern
Der FängerEin fallender Stern10Der Lebenszyklus eines Skripts
Awake und StartUpdate und LateUpdateOnEnable und OnDisableDie Reihenfolge im LebenszyklusRückblick: Lifecycle Logger5Transformationen und Hierarchie
Eltern und KinderSkalierungDinge ansehenAuf einen Punkt zubewegenRückblick: Umlaufender Mond8Dinge finden
Nach Namen findenTagsNach Typ findenReferenzen schlagen FindUnitys NullRückblick: Nächste Münze11Projekt: Weiche den Blöcken aus
Der LäuferFallende Blöcke6GameObjects und Komponenten
Referenzen im InspectorEine Komponente abrufenFehlende KomponentenEine Komponente hinzufügenRequireComponentEin- und AusblendenRückblick: Lichtschalter