Powtórka: platforma startowa
Część sekcji Fizyka i rozgrywka ścieżki Unity w Coddy. Lekcja 7 z 63.
Wyzwanie
ŁatwyGracz (Rigidbody o masie 2 kg) porusza się po ziemi do pomarańczowej platformy startowej, której Transform znajduje się w polu pad. Napisz Jumper:
- Strzałki w lewo i w prawo poruszają graczem wzdłuż osi x z prędkością dokładnie
speedm/s (4), przy użyciu surowej osi; gracz stoi w miejscu, gdy nie jest wciśnięta żadna strzałka, a grawitacja nadal działa. - Wciśnięcie spacji na platformie wystrzeliwuje gracza pionowo w górę impulsem o wartości
launch(16), więc jego masa ma znaczenie. Gracz znajduje się na platformie, gdy jego współrzędna x różni się od współrzędnej x platformy o mniej niż 1. Wciśnięcie spacji gdzie indziej nie robi nic. - Żadne wciśnięcie spacji nie może zostać utracone: odczytuj je w
Update(), a całą fizykę obsługuj wFixedUpdate().
Naciśnij Play, wejdź na platformę i wystrzel gracza, a następnie naciśnij Check.
Spróbuj swoich sił
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>();
}
}
Wszystkie lekcje w sekcji Fizyka i rozgrywka
1Ciało sztywne
Grawitacja i masaPopychanie za pomocą AddForceSkok z impulsemFixedUpdate dla fizykiPrędkośćCiała kinematycznePowtórka: platforma startowa2Kolizje
OnCollisionEnterW co uderzyłem?Rozbijanie przy zderzeniuStanie na podłożuOdbicie i tarcieKształty colliderówPodsumowanie: Zniszczalny mur