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.
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.
Aufgabe
EinfachLass den Spieler den Würfel mit den Pfeiltasten steuern.
- Füge in
Update(), solangeInput.GetKey(KeyCode.RightArrow)wahr ist,new Vector3(speed * Time.deltaTime, 0, 0)zutransform.positionhinzu. - Ziehe, solange
KeyCode.LeftArrowgedrückt gehalten wird, denselbenVector3mit-=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
1C#-Grundlagen in Unity
Hallo, UnityVariablenDezimalzahlen brauchen ein fText in der KonsoleVariablen, die sich etwas merkenIf und ElseZahlen vergleichenRückblick: Münzsammler7Schleifen und Methoden
Wiederholen mit forSchleifen in SchleifenEine Methode schreibenMethoden mit RückgabewertArraysRückblick: Treppe10Dinge finden
Nach Namen suchenTagsNach Typ suchenReferenzen schlagen SuchenUnitys NullRückblick: nächste Münze13Projekt: Weiche den Blöcken aus
Der LäuferBlöcke vom Himmel2Bring es in Bewegung
Platziere den WürfelBewege ihn in jedem FrameDrehe ihn jede SekundeSteuere mit den TastenRückblick: Fahre den Würfel5Vektoren
Vektoren addierenRichtungenLokaler und globaler RaumDiagonale GeschwindigkeitAbstand zwischen ObjektenVector3 ist eine StrukturRückblick: Drohnenpilot8GameObjects und Komponenten
Referenzen im InspectorEine Komponente abrufenFehlende KomponentenEine Komponente hinzufügenRequireComponentEin- und AusblendenRückblick: Lichtschalter11Prefabs und Erzeugen von Instanzen
Prefabs und InstantiateNach Zeitintervall erzeugenIn einem Raster erzeugenListen von ObjektenDas Neueste zurücknehmenZerstörenZufälliges ErzeugenRückblick: Feuerwerk14Abschließende Herausforderungen
MünzmagnetDie Straße überquerenStraßenverkehrTurmbauerLanden oder verfehlen3Der Inspector
Inspector-FelderSerializeFieldFließkommazahlen und MathfInspector-AttributeRückblick: Aufzug6Transformationen und Hierarchie
Eltern und KinderHisse die FlaggeSkalierungDinge anschauenAuf einen Punkt zubewegenRückblick: Mond in Umlaufbahn9Projekt: Fang den Stern
Der FängerEin fallender Stern12Der Lebenszyklus eines Skripts
Awake und StartUpdate und LateUpdateOnEnable und OnDisableDie Reihenfolge im LebenszyklusRückblick: Lifecycle LoggerÜbe selbstständig: Unity-Playground