‹›
Pomocné skripty · Penetrace těles

Jak penetrace funguje

Nechte hrot tělesa fyzikálně vstoupit do jiného tělesa, zůstat v něm a znovu se vytáhnout.

Penetrace propojuje Dynamic penetrator s povoleným targetem. Při platném zásahu vytvoří řízený kanál: těleso se může zasouvat a vytahovat podél vstupní osy, zatímco boční posun a relativní rotaci drží fyzikální constraint. Síly, hmotnost a gravitace stále rozhodují o pohybu.

Tři pojmy, které potřebujete#

PojemCo představuje
TargetBěžné Static nebo Dynamic těleso označené přes jolt_penetration_target(). Určuje materiálový odpor a limit hloubky.
TipLogický bod na předním povrchu penetratoru a jeho lokální osa. Není to další collider ani nové těleso.
RelationshipDočasné spojení konkrétního Tipu a targetu. Obsahuje vstupní bod, hloubku a stav; vzniká automaticky.

Průběh interakce#

Volný pohyb → kandidát u povrchu → Captured → skutečný entry / Start → zasouvání nebo Embedded → vytahování → úplné oddělení → rearm → další zásah. Některé stavy se mohou odehrát během jediného herního kroku.

K čemu se hodí#

Například pro šipku, hřeb, bodec nebo vidlici, které mají zůstat ve fyzikálním targetu. Target může být pohyblivý a dostává fyzikální reakci. Penetrace nevytváří díru do meshe, nedeformuje materiál a neodečítá health; vizuální stopu a gameplay reakci řeší projekt podle snapshotů a událostí.

Jak číst tuto dokumentaci#

  • Začněte kapitolou První funkční scéna a ověřte jednoduchý Box proti Static Boxu.
  • Potom upravte odpor targetu, umístění Tipu a max_angle v konfiguračních kapitolách.
  • Reference Tipu, relationship a událostí slouží při integraci do vlastní hry. Při odmítnutí použijte diagnostickou tabulku.

Penetrace se aktualizuje uvnitř běžného jolt_update(). Nevolejte další penetration step ani jolt_update pro každý Tip.