Menu
CoddyTech

Steuere mit den Tasten

Teil des Abschnitts Unity-Scripting: Grundlagen der Unity-Journey von Coddy. Lektion 12 von 85.

Input.GetKey(KeyCode.Space) ist in jedem Frame true, solange die Leertaste gedrückt gehalten wird, und andernfalls false. Frage den Wert in Update() ab und bewege das Objekt nur, wenn die Abfrage positiv ausfällt. So steuerst du das Objekt.

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 angegeben wird:

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. Hinweis zu Unity 6: Neue Projekte verwenden das neue Input System, und Input.GetKey löst dort einen Fehler aus, bis Active Input Handling (Project Settings, Player) auf Both eingestellt ist.

challenge icon

Aufgabe

Einfach

Lass den Spieler den Würfel mit den Pfeiltasten steuern.

  1. Füge in Update(), solange Input.GetKey(KeyCode.RightArrow) wahr ist, new Vector3(speed * Time.deltaTime, 0, 0) zu transform.position hinzu.
  2. Ziehe, solange KeyCode.LeftArrow gedrückt gehalten wird, denselben Vector3 mit -= ab.

Drücke „Spielen“, klicke ins Spiel und halte die Pfeiltasten gedrückt: Der Würfel gleitet nach rechts und links. Drücke dann „Prüfen“.

Probier es selbst

using UnityEngine;

public class Steering : MonoBehaviour
{
    public float speed = 4f;

    void Update()
    {
        // Rechtspfeil: nach rechts bewegen. Linkspfeil: nach links bewegen.
    }
}

Alle Lektionen in Unity-Scripting: Grundlagen

Übe selbstständig: Unity-Playground