Za CollisionScript stvorite skriptu za player.
Uklonite funkciju pokretanja i ažuriranja. Umjesto toga dodajte:
void OnCollisionEnter
Sve u zavojitim zagradama događa se pri sudaru dva objekta. Unityju trebaju informacije o tome koji je objekt pogođen. Za to koristite okrugle zagrade. Unesite "Sudar" i recite Unityju da stižu informacije o sudaru. Zatim mu dajte ime.
Sada dajete informacije o CollisionInfo. "." Označava da će sada slijediti specifikacija informacija. Sada dodajte sudarač i dalje navedite s "."
Sada formulirate uvjet za Jedinstvo.
Oznake se mogu koristiti za poboljšanje specifikacija. Imena mogu uzrokovati probleme jer se mogu promijeniti, a kôd inače više neće raditi. Dodajte oznaku i dodijelite je objektima koji se mogu sudariti s playerom.
Ispravite ovo u kodu i zamijenite ime oznakom.
Budući da igrač nakon sudara jednostavno leti okolo, kretanje igrača mora se deaktivirati. To se također radi putem skripte. Da biste to učinili, dodajte varijablu. Sada povucite PlayerMovement skriptu u novi utor.
Gotova skripta izgleda ovako:
Ako se igrač sudari s nečim što mu je dodijeljeno oznaka prepreke, u osnovi je igra završila i više ne može kontrolirati svog lika.
Da biste optimizirali fizičke reakcije igrača i objekata, odaberite opciju Kontinuirano u odjeljku Otkrivanje sudara u jedinstvu.
Osim toga, odaberite Uredi -> Postavke projekta -> Vrijeme i smanjite Fixed Time Steps na 0.01. Unity češće ažurira fiziku u igri.
Ove postavke optimiziraju sudare.
Izvorno objavljeno 2020-06-05 16:31:00.