Lässt es sich mit cremefarbenem Papier, einer Tönung, mehr Kontrast oder größerer Schrift besser lesen? Wählen Sie Ihre Farben und Ihre Schrift, einmalig für alle Seiten.

Kostenlose Lektion

Bewegung mit Geschwindigkeit und Schwerkraft

Nach dieser Lektion: Ich kann Dinge mit Geschwindigkeit und Schwerkraft Schritt für Schritt bewegen.

Lektion, 60 Min.1 BefehlSpieleentwicklungs-Lab: Spielschleife, Schwerkraft und Kollisionen im Browser

Wie bewegt ein Spiel eine Figur?

Ein Spiel bewegt eine Figur mit Geschwindigkeit: der Strecke, die sie in einem Bild zurücklegt. Die Schwerkraft ist eine kleine Zahl, die in jedem Bild zur Geschwindigkeit hinzukommt und so einen Fall natürlich wirken lässt.

Wer das versteht, kann einen fallenden Ball, einen Sprung oder einen Stern programmieren, der immer schneller wird.

Am Ende dieser Lektion

Notiz

Ich kann Dinge mit Geschwindigkeit und Schwerkraft Schritt für Schritt bewegen.

Schlüsselwörter

BegriffWas er bedeutetBeispiel
Geschwindigkeitwie weit sich eine Figur pro Bild bewegt3 Pixel pro Bild
Schwerkrafteine Zahl, die in jedem Bild zur Geschwindigkeit hinzukommtGRAVITY = 0.15
Beschleunigungdie Änderung der Geschwindigkeit pro Bild
Schrittein Bild der Rechnung: erst die Geschwindigkeit, dann die Position
Rückpralldie Umkehr der Richtung, wenn eine Figur den Boden trifft
Dämpfungder Anteil der Geschwindigkeit, der beim Rückprall bleibt

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Erst ändert sich die Geschwindigkeit, dann die Position

In jedem Bild passieren zwei Rechnungen. Zuerst kommt die Schwerkraft zur Geschwindigkeit hinzu. Dann kommt die neue Geschwindigkeit zur Position hinzu.

Die Schwerkraft verschiebt also nie direkt die Figur. Sie verändert nur das Tempo. Deshalb fällt ein Stern erst langsam und dann immer schneller. Auf der Leinwand wächst y nach unten, ein Fall hat daher eine positive Geschwindigkeit.

Ein Beispiel: Schwerkraft 1, Start in Ruhe

BildNeue GeschwindigkeitNeue Position y
10 + 1 = 10 + 1 = 1
21 + 1 = 21 + 2 = 3
32 + 1 = 33 + 3 = 6
43 + 1 = 46 + 4 = 10
54 + 1 = 510 + 5 = 15

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Ein fallender Ball mit Rückprall

Code: web
<canvas id="bild" width="200" height="200"></canvas>

Beim Rückprall dreht sich die Geschwindigkeit um

Der Rückprall ist ein eigenes Beispiel dieser Lektion. Das Spiel des Labs hat keinen. Trifft der Ball den Boden, setzt das Spiel ihn auf den Boden zurück und kehrt das Vorzeichen der Geschwindigkeit um.

Die Dämpfung bestimmt, wie viel bleibt. Bei 0,5 prallt der Ball mit der halben Geschwindigkeit ab. Bei 1 verliert er nichts und springt immer wieder gleich hoch.

Beispiel: Boden 10, halbe Dämpfung

BildGeschwindigkeitPosition yWas geschieht
4410berührt den Boden gerade nur
5515, wird 10Treffer: Geschwindigkeit wird minus 2,5
6-2,5 + 1 = -1,510 - 1,5 = 8,5steigt auf
7-0,58steigt, wird langsamer
80,58,5fällt wieder

Die Zellen, die Lernende ausfüllen, bleiben in dieser Vorschau leer.

Ein häufiger Fehler

Warnung

Viele addieren die Schwerkraft direkt zur Position. Der Ball fällt dann gleichmäßig und wirkt wie auf einem Förderband. Die Schwerkraft gehört zur Geschwindigkeit, die Geschwindigkeit zur Position.

Das Lab rechnet den Fall eines Sterns nach

Im Spiel des Labs fällt ein Stern genau nach dieser Regel. GRAVITY steht am Anfang von game.js. Das Skript fall.py liest den Wert und verfolgt einen Stern zehn Bilder lang.

Es gibt englische Wörter aus: gravity, frame, speed und y. Der Stern startet in Ruhe bei y gleich 0. Der Ball mit Rückprall ist nicht Teil des Labs.

Den Fall eines Sterns zehn Bilder lang verfolgen

Befehl
docker exec jupyter python3 steps/fall.py

Hier angezeigt, nicht ausgeführt. Erstellen Sie ein kostenloses Konto, um „Ausführen“ zu drücken und ihn im Terminal Ihres eigenen Labs einzugeben.

Die Schritte werden von Bild zu Bild größer

Bei unverändertem GRAVITY von 0,15 wächst die Geschwindigkeit in jedem Bild um 0,15, bis sie im zehnten Bild 1,50 erreicht. Der Stern ist dann 8,25 Pixel gefallen.

Jeder Schritt ist größer als der davor. Ändern Sie GRAVITY, speichern Sie game.js und starten Sie das Skript neu: Die Zahlen ändern sich mit.

Über dieses Lab und seinen Quellcode: Spieleentwicklungs-Lab: Spielschleife, Schwerkraft und Kollisionen im Browser

Sie unterrichten eine Gruppe? Weisen Sie dieses Modul Ihren Studierenden zu, mit Handbuch für Lehrende, automatisch geprüften Aufgaben und einem Lab für jede Person.