Rückblick: Startrampe
Teil des Abschnitts Physik und Gameplay der Unity-Journey von Coddy. Lektion 7 von 63.
Aufgabe
EinfachDer Spieler (ein Rigidbody mit 2 kg) läuft auf dem Boden zur orangefarbenen Abschussplattform, deren Transform im Feld pad gespeichert ist. Schreibe Jumper:
- Mit den Pfeiltasten nach links und rechts bewegt sich der Spieler entlang der x-Achse mit genau
speedm/s (4), wobei die rohe Achse verwendet wird; ohne gedrückte Pfeiltaste bleibt er stehen, und die Schwerkraft wirkt weiter. - Drücken der Leertaste auf der Plattform schleudert den Spieler mit einem Impuls von
launch(16) gerade nach oben, sodass seine Masse berücksichtigt wird. Der Spieler befindet sich auf der Plattform, wenn sein x-Wert weniger als 1 vom x-Wert der Plattform abweicht. Die Leertaste bewirkt an anderen Stellen nichts. - Kein Drücken der Leertaste darf verloren gehen: Lies die Eingabe in
Update()aus und führe die gesamte Physik inFixedUpdate()aus.
Drücke Play, laufe auf die Plattform und starte den Sprung, dann drücke Check.
Probier es selbst
using UnityEngine;
public class Jumper : MonoBehaviour
{
public float speed = 4f;
public float launch = 16f;
public Transform pad;
private Rigidbody rb;
void Start()
{
rb = GetComponent<Rigidbody>();
}
}
Alle Lektionen in Physik und Gameplay
1Rigidbody
Schwerkraft und MasseMit AddForce schiebenMit einem Impuls springenFixedUpdate für PhysikGeschwindigkeitKinematische KörperRückblick: Startrampe2Kollisionen
OnCollisionEnterWas habe ich getroffen?Beim Aufprall zerbrechenAuf dem Boden stehenAbprallen und ReibungCollider-FormenRückblick: Zerstörbare Wand