Inhaltsverzeichnis:
Video: 2D-Raketenlandungssimulation - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:15
Sie müssen einen Hintergrund erstellen, Raketen zeichnen und einen Indikator erstellen (natürlich benötigen Sie eine Internetverbindung, um Scratch zu verwenden), wenn Sie nur die Simulation / das Spiel spielen möchten, klicken Sie hier oder gehen Sie zu https:/ /scratch.mit.edu/projects/432509470/
Schritt 1: Physik-Engine
Raketensimulatoren können ohne Physiksimulation nicht existieren, daher benötigen Sie alle Variablen wie folgt:
- Vh oder VelocityHorizontal wie im Beispiel gezeigt
- Vv oder VelocityVertical wie abgebildet
- EnginePower, um den von der Rakete erzeugten Schub anzuzeigen
- EngineAngle, zur Lenkung durch Gimbals
- Gesamtgeschwindigkeit, für Anzeige- und Aufsetzbedingungen
- explodiert, aus Gründen, auf die wir im nächsten Schritt eingehen werden
Nachdem Sie die Variablen erstellt haben, gehen Sie zur Registerkarte "Bewegung" und legen Sie die Blöcke [x ändern um ()] und [ändern y um ()]
Platzieren Sie Ihre Vv in [change y by()] und Vh in [change x by()] und fügen Sie das Ganze in eine Schleife.
Um die Schwerkraft hinzuzufügen, fügen Sie einfach ein [Vh um (-1) ändern] in die Schleife ein.
Um einen Anschein von Ziehen hinzuzufügen, fügen Sie der Schleife den folgenden Block hinzu:
[Vh auf (0,99*Vh) einstellen]
[Vv auf (0,999*Vv) setzen]
Oh Junge, jetzt ist es Zeit für die "Motoren"
Da dies durch Kardanringe und Richtungsanzeige gesteuert wird, brauchen wir etwas, das es der Rakete ermöglicht, in die Richtung zu fliegen, in die sie zeigt. Da die Motordrehung einen gewissen Einfluss auf die Schubrichtung hat, trägt der Motorwinkel leicht zur Gesamtschubrichtung bei. Fügen Sie also hinzu, und bitten Sie den Computer, ein wenig Trigonometrie durchzuführen, und voila, die Motorleistung ist fertig.
Schritt 2: Spielmechanik
Als "Spiel" muss dies Kontrollen, eine Gewinnbedingung und eine Möglichkeit zum Ende des Spiels haben.
Für die Steuerelemente müssen Sie nur die Schlüssel mit einigen der Variablen verbinden, die wir zuvor festgelegt haben
Weisen Sie zwei Schlüssel der Motorrichtung und einen der Motorleistung zu, wie oben gezeigt
Verwenden Sie für die Gewinnbedingung eine bestimmte Farbe oder ein y-Level als Boden, und hier habe ich einen großen Teil der Karte als nicht landbares Gebiet angegeben. Wie Sie hier sehen, wird die Variable "explodiert" verwendet, die verhindert, dass der Kostümsetzer beim Auslösen der Explosion wieder auf einen nicht explodierten zurückschaltet. die Parameter sind mehr oder weniger vollkommen aufrecht und haben eine sehr niedrige Geschwindigkeit. jetzt nach der landung wird die rakete auf ein bestimmtes y-niveau gelegt, um zu verhindern, dass die rakete schwebt, und alles wird auf 0 gestellt.
Stellen Sie es für die Startbedingungen an einem vernünftigen Ort auf einen vernünftigen Winkel oder machen Sie es zufällig, es ist Ihre Wahl
Schritt 3: Indikatoren
Und schließlich, um es für mehr Leute spielbar zu machen, habe ich Indikatoren hinzugefügt, und Sie sollten auch visuelle Indikatoren leichter erkennen, und der Code wird oben angezeigt.