‹›
Pomocné skripty · Sockets

Socket / Docking systém

Neviditelné lokální body, které vyhledají kompatibilní protějšek, fyzikálně jej zarovnají a vytvoří jedno spravované spojení mezi skutečnými JoltBody.

Socket není rigid body, collider ani samostatný nativní fyzikální objekt. Je to GML popis pozice a orientace vůči parent body. Systém každý fixed step sestaví jeho world transform, vybere kompatibilní pár a podle receptu male socketu vytvoří Fixed, Hinge, Point nebo SwingTwist constraint.

Jak systém pracuje#

  • Každý socket patří jednomu živému managed JoltBody a ukládá local-space position a quaternion rotation.
  • Male je pohyblivá, řídicí strana. Female je host a cílový frame. Oba musí mít shodný compatibility type.
  • Bez attraction se spojení vytvoří až při splnění běžné position a rotation tolerance.
  • S attraction působí na Dynamic male omezená síla a torque. Constraint vznikne až při přesném zarovnání a nízké relativní rychlosti.
  • Connection vlastní jeden skutečný constraint. Disconnect, cooldown, pair collision, break limity a cleanup procházejí společným lifecycle.

Co socket není#

PrvekChování
SocketLogický frame a pravidla spojení; nemá tvar, hmotnost ani kolizní vrstvu.
JoltBodySkutečné fyzikální těleso, které se pohybuje, koliduje a přijímá síly.
SocketConnectionManaged vlastník jednoho Fixed, Hinge, Point nebo SwingTwist constraintu.
SocketGroupVíce povinných párů, které určují usazení; výsledkem je stále jeden constraint.

Doporučená cesta pro začátečníka#

  • Začněte Rychlým startem s jedním male a jedním female socketem.
  • Potom zvolte typ spojení a rozhodněte, zda mají připojená tělesa vzájemně kolidovat.
  • Attraction zapněte až po ověření local position a rotation v debug zobrazení.
  • Groups a break limity přidejte teprve tehdy, když základní pár funguje správně.