Bildschirmwackeln
Teil des Abschnitts Spielgefühl der Godot-Journey von Coddy. Lektion 11 von 23.
Ein Bildschirmwackeln unterstreicht einen wichtigen Moment, etwa einen Stampfer oder eine Explosion. In diesem Level ruft E die Kamerafunktion start_shake() auf, die shake auf 12 setzt. Noch bewegt sich nichts.
Eine Camera2D hat ein offset, einen Vector2, der die Ansicht verschiebt, ohne den Kameraknoten zu bewegen. Ein neuer zufälliger Offset in jedem Frame lässt die Ansicht wackeln.
offset = Vector2(randf_range(-shake, shake), randf_range(-shake, shake))Das Wackeln muss aufhören. Verringere shake in jedem Frame mit move_toward in Richtung 0, damit die Sprünge kleiner werden.
shake = move_toward(shake, 0.0, 30.0 * delta)Wenn shake 0 erreicht, sind beide Zufallszahlen 0 und offset ist wieder Vector2(0, 0).
Aufgabe
MittelIn _process:
- bewege
shakemitmove_towardum30.0 * deltain Richtung 0, - setze
offsetauf einen zufälligenVector2zwischen-shakeundshakeauf jeder Achse.
Drücke dann E, um aufzustampfen.
Probier es selbst
extends Camera2D
var shake = 0.0
func _ready():
limit_left = 0
limit_top = 0
limit_right = 1600
limit_bottom = 360
func start_shake():
shake = 12.0
func _process(delta):
pass
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Spielgefühl
Übe selbstständig: Godot-Playground