Bildschirmschoner: Neue Farben
Teil des Abschnitts Nodes und Szenen der Godot-Journey von Coddy. Lektion 27 von 27.
Der letzte Schritt gibt dem Logo bei jedem Abprallen eine neue Farbe. Speichere die Farben in einer Liste in eckigen Klammern. colors[0] ist die erste Farbe, colors[1] die zweite. Ein Index gibt an, welche Farbe als Nächstes kommt:
var colors = [
Color(0.49, 0.95, 0.75),
Color(1, 0.78, 0.34),
]
var color_index = 0Alle vier Wände machen dasselbe. Packe es also in eine Funktion, die bei jedem Abprallen aufgerufen wird. Sie setzt modulate auf die Farbe an der Position color_index und erhöht dann den Index um 1.
Wenn der Index colors.size() erreicht, gibt es dort keine Farbe. Setze ihn wieder auf 0, damit die Farben von vorne beginnen.
Aufgabe
Einfach- Füge eine Knotenvariable
colorshinzu: eine Liste mit mindestens drei Farben (Minze, Bernstein, Koralle und Blau aus dem Kurs sindColor(0.49, 0.95, 0.75),Color(1, 0.78, 0.34),Color(1, 0.42, 0.42)undColor(0.369, 0.635, 1)) sowiecolor_index = 0. - Schreibe
next_color(): Setzemodulateauf die Farbe beicolor_index, erhöhe den Index um 1 und setze ihn am Ende der Liste wieder auf 0. - Rufe die Funktion bei jedem Abprallen auf: an den Seiten, oben und unten.
Probier es selbst
extends Node2D
var velocity = Vector2(200, 90)
func _process(delta):
position += velocity * delta
if position.x > 570 or position.x < 70:
velocity.x = -velocity.x
if position.y > 330 or position.y < 30:
velocity.y = -velocity.y
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Nodes und Szenen
2Jeder Frame
Prozess läuft in jedem FrameDeltaPixel pro SekundeDiagonal bewegenMit Rotation drehenMit Skalierung wachsen5Projekt: Bildschirmschoner
Bildschirmschoner: DriftBildschirmschoner: SeitenwändeÜbe selbstständig: Godot-Playground