Rugalmas rendszer – MRTK2
Az MRTK egy rugalmas szimulációs rendszerrel rendelkezik, amely számos bővíthető és rugalmas alosztályt tartalmaz, amelyek 4 dimenziós kvaternion rugókhoz, 3 dimenziós kötetrugókhoz és egyszerű lineáris rugórendszerekhez kínálnak kötéseket.
Az elastics managert támogató alábbi MRTK-összetevők jelenleg rugalmas funkciókat használhatnak:
Elastics manager
Az átadott elastics manager-folyamatok átalakítják és betáplálják őket a rugalmas rendszerbe.
Az egyéni összetevők rugalmasságának engedélyezése két lépésben valósítható meg:
- Az Inicializálás metódus meghívása a manipuláció indításához, a rendszer frissítése az aktuális gazdagép-átalakítással.
- Az ApplyHostTransform lekérdezése, amikor rugalmas számítást kell végezni a frissített célátalakításon.
Vegye figyelembe, hogy a rugalmasok a manipuláció befejeződése után is szimulálni fognak (az elastics manager frissítési ciklusán keresztül). A viselkedés letiltásához az EnableElasticsUpdate rugalmas automatikus frissítése false (hamis) értékre állítható.
Alapértelmezés szerint az elastics manager összetevő, amikor hozzáadja egy játékobjektumhoz, nem lesz engedélyezve a rugalmasságok semmilyen átalakítástípushoz.
A mezőt Manipulation types using elastic feedback
engedélyezni kell bizonyos átalakítási típusokhoz, hogy rugalmas konfigurációt és mértékeket hozhasson létre a kiválasztott típushoz.
Rugalmas konfigurációk
A korlátok vezérlőkonfigurációihoz hasonlóan az Elastic Manager konfigurációs objektumok készletével is rendelkezik, amelyek szkriptelhető objektumként tárolhatók, és megoszthatók különböző példányok vagy előfabsok között. A konfigurációk megoszthatók és összekapcsolhatók egyéni szkriptelhető eszközfájlokként vagy beágyazott szkriptelhető eszközökként az előfabsokban. A további konfigurációk közvetlenül a példányon is definiálhatók anélkül, hogy külső vagy beágyazott szkriptelhető objektumhoz csatlakoznak.
A elastics manager inspector jelzi, hogy egy konfiguráció meg van-e osztva vagy beágyazottan az aktuális példány részeként, ha megjelenik egy üzenet a tulajdonságfelügyelőben. Emellett a megosztott példányok nem szerkeszthetők közvetlenül az elastics manager tulajdonságablakában, hanem a hivatkozott objektumot közvetlenül módosítani kell, hogy elkerülje a megosztott konfigurációk véletlen módosításait.
Az Elastics Manager a következő átalakítási típusokhoz kínál konfigurációs objektumbeállításokat, amelyek mindegyike egy rugalmas konfigurációs objektummal jelenik meg:
- Rugalmas fordítás
- Rugalmas elforgatás
- Rugalmas méretezés
Rugalmas konfigurációs objektum
A rugalmas konfiguráció egy nedves harmonikus oszcillátor-különbségi rendszer tulajdonságait határozza meg. A következő tulajdonságok módosíthatók, de már rendelkeznek alapértelmezett értékekkel az MRTK-ban:
- Tömeg: a szimulált oszcillátorelem tömege.
- HandK: kézi rugós állandó.
- EndK: záró cap spring constant.
- SnapK: illesztési pont rugós állandója.
- Húzás: húzás/lengéscsillapító tényező, a sebességével arányos.
Rugalmas mértékek
A rugalmas mértékek beállításai a manipuláció típusától függően változnak. A fordítást és a skálázást a kötetrugalmas mértékek , a forgatást pedig egy kvaternion rugalmas kiterjedés képviseli.
Kötet rugalmas kiterjedése
A kötetek kiterjedései olyan háromdimenziós teret határoznak meg, amelyben a megnedvesített harmonikus oszcillátor szabadon mozoghat.
- StretchBounds: a rugalmas terület alsó határait jelöli.
- UseBounds: azt jelzi, hogy a rendszernek tiszteletben kell-e tartania a nyúláshatárokat. Ha igaz, a célpozíció aktuális iterációja kívül esik a nyúlási korlátokon, a végerő lesz alkalmazva.
- SnapPoints: pontok azon a területen belül, amelyhez a rendszer hozzá fog illeszteni.
- RepeatSnapPoints: megismétli a dokkolási pontokat a végtelenig. A meglévő illesztési pontok moduloként szolgálnak, ahol a tényleges illesztési pontok az egyes illesztési pontok legközelebbi egész számainak többszörösére vannak leképezve.
- SnapRadius: távolság, amelyen a dokkolási pontok elkezdik a rugó kényszerítését.
Quaternion rugalmas kiterjedése
A quaternion-mértékek egy négydimenziós forgatóteret határoznak meg, amelyben a megnedvesített harmonikus oszcillátor szabadon elforgatható.
- SnapPoints: euler szögek, amelyekhez a rendszer hozzá fog illeszteni.
- RepeatSnapPoints: megismétli az illesztési pontokat. A meglévő illesztési pontok moduloként szolgálnak, ahol a tényleges illesztési pontok az egyes illesztési pontok legközelebbi egész számainak többszörösére vannak leképezve.
- SnapRadius: ív-szög, amelyen a illesztési pontok euler fokban kezdik el a rugót kényszeríteni.
Rugalmas példajelenet
A jelenetben ElasticSystemExample
talál példákat a rugalmas konfigurációkra.