Wtyczka · UE 5.8

Box3D Physics dla Unreal Engine 5.8

Deterministyczna fizyka brył sztywnych, niezależna od Chaosa. Stały krok czasowy, nagrywanie i odtwarzanie symulacji, złącza, sensory i dwanaście grywalnych map demo. Pełne źródła C++ w komplecie.

Deterministyczna symulacja brył sztywnych, niezależna od Chaosa — darmowa do użytku osobistego, 99 $ za licencję Pro.

Wersja1.0.0
SilnikUE 5.8
PlatformaWin64
Krok czasowy60 Hz / 4 pod
Mapy demo12
ŹródłaC++ w komplecie
BlueprintPełne API
LicencjaDarmowa / 99 $ Pro

Box3D — wtyczka, która wprowadza silnik fizyczny Box3D autorstwa Erina Catto do Unreal Engine 5.8 jako pełnoprawne środowisko symulacji — jest już dostępna na Fab. Wersja 1.0.0 zawiera pełne źródła C++, dostęp z poziomu Blueprintów do codziennej części API oraz dwanaście gotowych map demonstracyjnych.

Długa kaskada domina w trakcie przewracania się, symulowana przez solver Box3D
Dominoes — uruchom, nagraj, odtwórz: ta sama kaskada.

Czym to jest

Box3D to samodzielne środowisko fizyki dla Unreala. Podsystem świata krokuje symulację ze stałą częstotliwością 60 Hz i czterema podkrokami, całkowicie niezależnie od Chaosa. Komponenty ciał i kształtów sterują Twoimi istniejącymi aktorami, więc możesz symulować jeden system deterministycznie, podczas gdy Chaos nadal obsługuje resztę gry — albo zastąpić Chaos dla wybranych aktorów tam, gdzie ma to znaczenie.

Silnik pod spodem to Box3D Erina Catto, trójwymiarowy odpowiednik Box2D. To zorientowany na dane solver napisany w C17, zaprojektowany z myślą o dużych stosach ciał, z ciągłą detekcją kolizji, usypianiem opartym na wyspach i determinizmem międzyplatformowym.

Dlaczego determinizm

Stały krok czasowy działa domyślnie na jednym wątku solvera, więc ta sama scena krokuje tak samo przy każdym uruchomieniu. Ta własność jest pokryta testami automatycznymi wewnątrz wtyczki i to ona umożliwia resztę: symulacje można zapisywać do nagrań .b3rec i odtwarzać wewnątrz silnika, a symulowanych aktorów można wypalić do Level Sequence przez Take Recorder.

Jeśli zdarzyło Ci się wydawać fizyczną łamigłówkę, system powtórek albo grę sieciową, w której te same dane wejściowe musiały dać ten sam wynik — to jest ta część, która ma znaczenie.

Mapa-hub demonstracji Box3D w Unreal Engine, punkt wejścia do każdej mapy demo
Mapa-hub — punkt wejścia do wszystkich dwunastu map.

Co jest w środku

  • Bryły sztywne — prymitywy: sfera, box-hull i kapsuła, a także kolizja typu triangle-mesh i wypukła, odwzorowana bezpośrednio z własnej kolizji Static Mesha.
  • Złącza (joints) — obrotowe, dystansowe, sferyczne i spawane, ze zdarzeniami zerwania, silnikami i setterami działającymi na żywo.
  • Sensory ze zdarzeniami wejścia/wyjścia oraz powierzchnie przenośników.
  • Zapytania — overlap, sweep i line trace względem świata Box3D.
  • Zdarzenia kontaktu i statystyki solvera dostępne w czasie działania.
  • Ścieżka instanced-mesh dla scen sięgających tysięcy ciał.
  • Obsługa Simulate-In-Editor, dzięki czemu obejrzysz, jak scena się układa, bez wchodzenia w tryb Play.
  • Przechwytywanie przez Take Recorder symulowanych aktorów do Level Sequence.
  • Offline'owe wypalanie kolizji komendletem dla geometrii statycznej.

Ciała, kształty, złącza, sensory, zapytania, zdarzenia kontaktu i sensorów oraz ustawienia solvera są wystawione do Blueprintów, więc projekt oparty wyłącznie na Blueprintach też z tego zbuduje. Kilka narzędzi po stronie edytora — komendlet wypalania i generator map demonstracyjnych — pozostaje wyłącznie w C++.

Dwanaście map demo, a nie rolka zrzutów ekranu

Wtyczka dostarcza swoje dema jako grywalną zawartość, nie jako materiał marketingowy. Każde z nich korzysta wyłącznie z zawartości silnika, ma nakładkę ze statystykami na żywo i wystawia swoje parametry do strojenia.

Wiszący pomost zbudowany z zawiasowanych desek, uginający się pod zrzuconym ciężarem
Bridge — pomost ze złączy obrotowych pod obciążeniem.

Bridge buduje pomost wiszący ze złączy obrotowych i pozwala zrzucać na niego ciężar. Ball and Chain to test obciążeniowy łańcucha złączy. Jenga i Large Pyramid sprawdzają stabilność stosów — przypadek, w którym solvery zwykle pokazują swoje słabości.

Wieża Jenga ze złożonych drewnianych klocków stojąca pod solverem Box3D
Jenga — stabilność stosu pod solverem Soft Step.
Duża piramida ze złożonych skrzyń pokazująca stabilność stosu w skali
Large Pyramid — ten sam test, w skali.

Dominoes to pokaz determinizmu: uruchom, nagraj, odtwórz — dostaniesz tę samą kaskadę. Inclined Plane izoluje restytucję i tarcie na regulowanej równi. Ragdoll Pile wrzuca ciała artykułowane na stertę. Conveyor Circuit pokazuje powierzchnie przenośników przemieszczające ładunek po pętli. Car Racing i Smoke dopełniają zestaw, a Monte Cristo to narracyjna machina zbudowana w całości z części Box3D.

Sterta artykułowanych ragdolli układających się na ziemi
Ragdoll Pile — ciała artykułowane układające się.
Zapętlony obwód przenośnikowy transportujący skrzynie wokół toru
Conveyor Circuit — transport napędzany powierzchnią.

Uczciwe ograniczenia

Warto wiedzieć przed zakupem:

  • Kolizja triangle-mesh działa tylko dla ciał statycznych. To ograniczenie samego silnika Box3D, nie braku w integracji — poruszający się obiekt potrzebuje kształtów wypukłych lub prymitywów.
  • Brak kształtów typu height-field.
  • Brak importu @@PROTECT1@@ → Sequencer. Take Recorder przechwytuje zamiast tego transformacje aktorów na żywo.
  • Chaos i Box3D nie oddziałują na siebie. Ciało Box3D jest dla Chaosa statyczne — i odwrotnie.
  • Tylko Windows (Win64) w wersji 1.0.0.

Wymagania i licencjonowanie

Unreal Engine 5.8, Win64. Źródła C++ w komplecie. Box3D jest darmowy do użytku osobistego i kosztuje 99 $ za licencję Professional, obsługiwaną przez standardowe poziomy licencji Fab.

Atrybucja

Zawiera Box3D autorstwa Erina Catto na licencji MIT (github.com/erincatto/box3d).

Box3D Physics 1.0.0 — Unreal Engine 5.8, Win64.

Pobierz na Fab →