Kursinhalt
Unity für Anfänger
Unity für Anfänger
Eingabesystem
Lassen Sie uns über das Unity Input System sprechen, das Ihnen hilft, alles von Tastatureingaben bis zu Joystick-Bewegungen zu erfassen und in spannende Gameplay-Aktionen umzuwandeln.
Verständnis der Schlüsselmethoden
Input.GetAxis
;Input.GetButton
;Input.GetKey
.
Diese drei Methoden sind Ihre Hauptwerkzeuge, um Benutzereingaben in Unity zu erfassen. Lassen Sie uns ihre Stärken, Schwächen und idealen Anwendungsfälle erkunden:
Input.GetAxis
- Zweck: liest die Stärke und Richtung eines achsenbasierten Eingabegeräts, wie z.B. eines analogen Joysticks, Tastaturtasten (WASD) oder Mausbewegungen;
- Rückgabewert: ein Wert zwischen -1 (voll negativ) und 1 (voll positiv). 0 zeigt keine Eingabe an, positive Werte repräsentieren positive Bewegung auf der Achse, und negative Werte repräsentieren negative Bewegung;
- Anwendungen: nützlich für kontinuierliche Aktionen wie Bewegung, Steuerung, Kameradrehung oder allmähliche Intensitätsänderungen (z.B. das allmähliche Beschleunigen eines Autos).
Beispiel: erfasst links/rechts Bewegung auf einer Tastatur oder einem Joystick.
Input.GetButton
- Zweck: erkennt, ob eine diskrete Taste (z.B. Leertaste auf der Tastatur, A-Taste auf dem Gamepad, Berührung auf dem Bildschirm) gedrückt gehalten wird (true) oder nicht (false);
- Rückgabewert: ein boolescher Wert (true oder false);
- Anwendungen: ideal zum Umschalten von Aktionen wie Springen, Schießen einer Waffe, Verwenden einer Fähigkeit oder Aktivieren von Menüs.
Beispiel: überprüft, ob die Sprungtaste gedrückt wird.
Input.GetKey
- Zweck: erkennt, ob eine bestimmte Tastaturtaste gedrückt gehalten wird (true) oder nicht (false);
- Rückgabewert: ein boolescher Wert (true oder false);
- Anwendungen: hauptsächlich für tastaturbasierte Steuerungen verwendet, für Aktionen wie Inventarverwaltung, Hotkeys oder Charakterfähigkeiten.
Beispiel: prüft, ob die Shift-Taste gedrückt gehalten wird.
Die richtige Eingabemethode wählen
Die Wahl der richtigen Eingabemethode ist entscheidend für die Erstellung eines intuitiven und reaktionsschnellen Gameplays. Hier ist ein kurzer Leitfaden:
- Verwenden Sie
Input.GetAxis
für kontinuierliche, richtungsempfindliche Steuerung, wie z.B. Charakterbewegung oder Kameradrehung; - Verwenden Sie
Input.GetButton
für einfache Ein-/Aus-Schaltaktionen, wie Springen oder das Abfeuern einer Waffe; - Verwenden Sie
Input.GetKey
für tastaturspezifische Steuerungen, ideal für Aktionen wie Inventarverwaltung oder das Aktivieren von Hotkeys.
Merken Sie sich:
- Effizienz: Vermeiden Sie es, diese Methoden unnötig in jedem Frame aufzurufen, da dies die Leistung beeinträchtigen kann. Verwenden Sie stattdessen bedingte Überprüfungen oder ereignisbasierte Handhabung, wenn möglich;
- Experimentieren: Probieren Sie verschiedene Kombinationen aus und entdecken Sie, was am besten für das Design und die Zielgruppe Ihres Spiels funktioniert;
Experimentieren hilft Ihnen, die intuitivsten und reaktionsschnellsten Steuerungen zu finden.
Danke für Ihr Feedback!