Ograniczenia przenośne

*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.

Silnik fizyczny obejmuje następujące Constraints, które stosują siłę lub moment obrotowy do przemieszczenia jednego lub więcej zespołów.Ponadto dostępne są różne ograniczenia mechaniczne, które zachowują się jak połączenia koncepcyjne mechaniczne, w tym zawiasy, sprężyny, sznury i wiele więcej.

Prędkość liniowa

Prędkość liniowa stosuje siłę na złożeniu, aby utrzymać stałą prędkość wzdłuż wektora 3D, linii lub planu 2D
Prędkość kątowa

AngularVelocity stosuje moment obrotowy na złożeniu, aby utrzymać stałą prędkość kątową
Dostosuj pozycję

Dostosuj pozycję stosuje siłę do przesuwania dwóch załączników razem lub przesuwania jednego załącznika do pozycji docelowej
Dostosuj orientację

Ustawienie orientacji stosuje moment obrotowy do wyśrodkowania dwóch załączników lub wyśrodkowania jednego załącznika z orientacją celu
Siła wektorowa

VectorForce stosuje stałą liniową siłę na złożeniu
Moment obrotowy

Moment obrotowy stosuje stały moment obrotowy na złożeniu z jego centrum masy
Siła linii

Siła liniowa stosuje siłę wzdłuż teoretycznej linii łączącej jego dwa załączniki

Wizualizacja ograniczeń

Aby dokładnie wizualizować ograniczenia w Studio, możesz użyć następujących opcji z zakładki Model w pasku narzędzi:

Constraints tools indicated in Model tab

Pokaż spawy — Pokaż WeldConstraints, oddzielnie od wizualizacji innych ograniczeń.

Szczegóły ograniczeń — Pokaż kompletne wizualne szczegóły ograniczeń nie spawanych.

Skala — względna skala wizualizacji.

Twórz ograniczenia

Ograniczenia przenośne typowo łączą jeden lub dwa Attachments lub Bones.Po połączeniu z Bones ograniczenie wykorzysta ich animowane położenie i orientację.

Aby utworzyć ograniczenie przenośne, możesz użyć narzędzia Twórz lub okna Eksplorator .

  1. Na zakładce Model otwórz menu wyboru przycisku Twórz i wybierz pożądany typ ograniczenia, na przykład Prędkość analityczna .

    Constraint picker indicated in Studio toolbar
  2. W widoku 3D przewiń nad dowolnym Part lub MeshPart i kliknij, aby dodać nowy Attachment do części w punkcie wizualizacji.Alternatywnie przewiń i kliknij istniejący Attachment lub Bone , aby użyć go do ograniczenia.

  3. Niektóre ograniczenia przemieszczania wykorzystują lub wspierają załącznik drugorzędny w swojej funkcjonalności, więc narzędzie może poprosić o powtórzenie poprzedniego kroku na innym Part, MeshPart lub Attachment , lub Bone.

    AngularVelocity using one attachment
    Prędkość kątowa za pomocą jednego załącznika
    AlignPosition using two attachments
    Dostosuj pozycję korzystając z dwóch załączników

Symulacja fizyczna

Aby symulować fizykę podczas przesuwania lub obrotu części, możesz przełączyć się na tryb fizyczny w pasku narzędzi Studio, skutecznie zmuszając części do przestrzegania ograniczeń fizycznych.Na przykład, jeśli przeciągniesz jedną część wokół sceny i zderzy się z inną częścią, fizycznie wypchnie tę część z drogi.

Konwersja przenośnika dziedzictwa

Jeśli twoje doświadczenie opiera się na starszych ograniczeniach BodyMover opartych na dziedzictwie, przejrzyj następujące uwagi podczas konwersji na nowoczesne ograniczenia przenoszenia.

AlignPosition spełnia większość przypadków użycia pokrytych przez przestarzały BodyPosition przenośnik.Aby zsynchronizować się z tym, jak starszy przenośnik traktował każdy komponent niezależnie i pozwalał na działanie różnej siły wzdłuż każdego wymiaru, właściwość ForceLimitMode z AlignPosition pozwala na działanie ograniczenia w trybie Magnitude lub PerAxis :

  • W trybie Magnitude istniejące zachowanie jest zachowane, a MaxForce jest interpretowane jako wielkość.

  • W trybie PerAxis każda siła wzdłuż osi może być określona niezależnie.Ponieważ maksymalna siła jest określona jako wektor, można również określić ramę referencyjną siły za pomocą właściwości ForceRelativeTo , World i Attachment0 oraz opcji Attachment1.Ponadto formuła dla wewnętrznego kontrolera jest modyfikowana, aby pasowała do tej z BodyPosition.

AlignOrientation spełnia większość przypadków użycia pokrytych przez przestarzały BodyGyro przenośnik.Tryby AlignType z AlignOrientation zapewniają wystarczającą swobodę dla większości aplikacji, a kombinacja wielu ograniczeń może odtworzyć ograniczenie momentu obrotowego wektora.Ponadto tryb PrimaryAxisLookAt wymusza pierwotną osię z pierwszego załączenia ograniczenia ( Attachment0 ), aby zawsze wskazywał na drugie załączenie ( Attachment1 ), co ułatwia dodawanie takich rzeczy, jak kamery śledzące ruch lub pociski kierowane.

LinearVelocity spełnia większość przypadków użycia pokrytych przez przestarzały BodyVelocity przenośnik.Chociaż legacy mover pozwala na wektor MaxForce, typowe zastosowanie tego wektora siły polegało na zerowaniu określonego komponentu, co pozwoliło wyłączyć ograniczenie wzdłuż tego wymiaru.LinearVelocity osiąga podobny efekt poprzez działanie w odrębnych trybach VelocityConstraintMode i Vector, które odpowiadały jednej (Line), dwóm (Plane), i trzem ( ) wymiarom.

Ponadto właściwość ForceLimitMode z opcją PerAxis pomieści każdą aplikację siły wektorowej z wszystkimi niezerowymi składnikami, takimi jak zwiększenie siły wzdłuż jednego osi, aby zrównoważyć grawitację.

Chociaż AngularVelocity ma pewne rozbieżności z przestarzałym BodyAngularVelocity przenośnikiem, konkretne przypadki związane z tymi rozbieżnościami nie zostały wyróżnione przez społeczność, ani wewnętrznie.

Jako odrębne ulepszenie, AngularVelocity działa z Attachments i właściwość RelativeTo pozwala określić CFrame siłę, na przykład World lub Attachment1.

VectorForce spełnia wszystkie przypadki użycia oferowane przez przestarzałe BodyForce i BodyThrust przenoszące.Ograniczenie współczesne działa z Attachments i jego właściwość RelativeTo pozwala na zastosowanie siły do względnego przesunięcia z centrum, podobnie jak to działało BodyThrust.Location.

Kombinacja LineForce i AlignOrientation zaspokaja większość przypadków użycia pokrytych przez przestarzały przenośnik RocketPropulsion.W przykładzie pocisku kierowanego można użyć LineForce, aby kontrolować zachowanie "podążania za celem" RocketPropulsion podczas gdy AlignOrientation i jego właściwość LookAtPosition mogą być używane do kontroli zachowania "celu twarzy".