Propy · 3 min czytania

Prop FiveM bez kolizji? Dlaczego gracze przechodzą przez niego

Czytaj w języku: English · Español · Français · Deutsch · Português · Italiano · Türkçe · Русский

Prop Collision Editor z ławką z gry prop_bench_05: jej sześć pudełek kolizji narysowanych nad modelem, każde z podaną powierzchnią

Spawnujesz własny prop i przechodzisz przez niego. Albo samochody przejeżdżają przez niego, kule przelatują na wylot, albo unosi się o dłoń nad ziemią. Wszystko to sprowadza się do kolizji propu: niewidocznego kształtu, którego gra używa do fizyki, oddzielonego od modelu, który widzisz.

Gdzie leży kolizja propu

Prop spawnowany przez CreateObject ma kolizję w swoim modelu, w .ydr (lub .yft). Tak robią to propy gry: spośród 11 410 propów w grze, których archetyp wskazuje słownik fizyki, 11 352 ma kolizję w modelu. Plik .ybn to coś innego: w ten sposób mapy i MLO przechowują stałą kolizję, mapa we współrzędnych świata, a wnętrze tam, gdzie jest umieszczone.

Gdy własny prop nie ma kolizji, zwykle przyczyną jest jedna z tych rzeczy:

  • Model jej nie ma. Został wyeksportowany bez niej (częste przy modelach przeniesionych z innych gier lub prosto z Blendera).
  • .ytyp jej nie wskazuje. Archetyp ma physicsDictionary; bez niego gra rysuje prop, ale nie używa jego kolizji.
  • Ignoruje to, co powinna zatrzymywać. Każda część kolizji określa, z czym koliduje. W 8000 propów gry, które sprawdziliśmy, 7176 części kolizji jest ustawionych tak, by zatrzymywać tylko strzały i kamerę. Sądząc po ich flagach, kolizja złożona tylko z takich części przepuszcza graczy i samochody.
  • Ma zły kształt. Wypukła otoczka nie może mieć dziur: wypełnia przestrzeń pod stołem lub w łuku.

Dlaczego prop unosi się lub zapada

CreateObject stawia punkt zaczepienia propu w podanych przez ciebie współrzędnych. Jeśli punkt jest w środku modelu, połowa jest pod ziemią; jeśli kolizja sięga pod model, prop stoi na niej i wydaje się unosić. Prop w ogóle bez kolizji spada przez ziemię, jeśli nie jest zamrożony.

Najpierw zobacz kolizję

Przeciągnij .ydr (lub .yft) z jego .ytd do Model Inspector i włącz Collision (kolizja): zostanie narysowana nad modelem, pokolorowana wg powierzchni, obok peda freemode. Sekcja modelu mówi, jaką ma kolizję albo "none inside" (brak w środku), i gdzie jest jego punkt zaczepienia: na dole, na górze lub kilka metrów nad dołem. To darmowe i niczego nie zmienia.

Dodaj lub napraw

Otwórz prop w Prop Collision Editor: przeciągnij jego .ydr lub .yft, z .ytd, żeby zobaczyć tekstury, i z .ytyp, jeśli go masz. Albo wybierz prop gry po nazwie jako punkt startu.

  1. Fit to the model (dopasuj do modelu) do szybkiego dopasowania, albo dodaj części ręcznie: + Box (pudełko), + Sphere (kula), + Capsule (kapsuła), + Cylinder (walec). Przesuń, obróć i zmień rozmiar każdej nad modelem.
  2. Dla części samego modelu (blat stołu, noga) użyj Pick triangles (wybierz trójkąty), a potem Fit to the picked triangles (dopasuj do wybranych trójkątów).
  3. Nadaj każdej części Surface (powierzchnię: jej dźwięk, ślady i kurz przy trafieniu) i ustaw What hits it (co w nią trafia): Everything (wszystko) dla litego propu, albo Shots and camera only (tylko strzały i kamera), Not vehicles (bez pojazdów) i inne, gdy chcesz mniej.
  4. Pobierz. Jeśli przeciągnąłeś też .ytyp, dostajesz .zip z modelem i .ytyp, którego pudełko powiększa się, by objąć kolizję, jeśli wystaje.

Części, których nie ruszałeś, wracają dokładnie takie, jakie były. W .yft (zbijalnym propie albo części pojazdu) możesz przesuwać i zmieniać rozmiar istniejących kawałków, ale nie dodawać ani usuwać, i nie zmieniać, z czym kolidują.

Robisz prop sam?

Jeśli prop pochodzi z .glb, ustaw kolizję przy tworzeniu: GLB to Prop ma Fitted (convex hull), Its own triangles (własne trójkąty) do propów, w które się wchodzi, i podłóg, Box around it i None, a także zapisuje .ytyp z jego słownikiem fizyki. (Cała konwersja.)

Pytania

Czy mogę po prostu dać .ybn obok propu?
.ybn to stała kolizja dla mapy lub wnętrza, umieszczona tam, gdzie leży mapa. Prop, który spawnujesz, porusza się wraz z własną kolizją, która leży w jego .ydr lub .yft.
Mój prop ma kolizję, ale samochody przez niego przejeżdżają. Dlaczego?
Najczęściej jego części są ustawione tak, by nie kolidować z pojazdami. W Prop Collision Editor ustaw What hits it na Everything.
Dlaczego nie mogę przejść pod moim stołem?
Wypukła otoczka to jeden zamknięty kształt bez dziur. Użyj osobnych pudełek na blat i nogi albo Its own triangles w GLB to Prop.

Narzędzie do tego

Prop Collision Editor

Przeciągnij swój prop i ukształtuj jego kolizję nad modelem: pudełka, kule, kapsuły i walce, każdy z powierzchnią i tym, co zatrzymuje.

Otwórz Prop Collision Editor

Przydatne także tutaj: Model Inspector · GLB to Prop

Więcej poradników

Wszystkie poradniki →

Każde narzędzie możesz wypróbować za darmo: 5 eksportów dziennie. Zaloguj się przez Discord, aby z nich korzystać.