Podsumowanie: laserowa bariera
Część sekcji Fizyka i rozgrywka ścieżki Unity w Coddy. Lekcja 39 z 63.
Wyzwanie
ŚredniZabezpiecz skarbiec laserową wiązką alarmową. Skrypt Tripwire znajduje się na słupku emitera, a Inspector przypisuje mu intruders (LayerMask z zaznaczoną warstwą Player), lamp (Renderer) oraz range o wartości 6.
- Wiązka to promień biegnący od emitera w kierunku jego własnej osi forward, o długości
rangejednostek, który wykrywa tylko warstwyintruders. Słupek odbiornika i skrzynie znajdują się na innych warstwach. - Gdy coś blokuje wiązkę, lampka świeci na czerwono (
Color.red); gdy wiązka jest niezakłócona, świeci na zielono (Color.green). - Za każdym razem, gdy wiązka przechodzi ze stanu niezakłóconego do zablokowanego, zapisz w logu
Alarm: Playerwraz z nazwą obiektu, który ją zablokował. Stanie w wiązce nie powoduje ponownego zapisu w logu; wyjście z niej i powrót już tak.
Naciśnij Play i przeprowadź gracza przez wiązkę za pomocą strzałek, a następnie naciśnij Check.
Spróbuj swoich sił
using UnityEngine;
public class Tripwire : MonoBehaviour
{
public LayerMask intruders;
public Renderer lamp;
public float range = 6f;
void Update()
{
}
}
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