‹
Aktuální projekt

Fyzikální zámek tělesa

Zastavte samostatné pevné těleso v aktuální póze. Handle, tvar i reference zůstávají. Chová se jako Static a zůstává kolizní/raycastovou překážkou. Odemčení obnoví původní typ pohybu z klidu; staré rychlosti a síly se zahodí. Nejde o uspání.

Příklad#

GML
body.set_physics_locked(true);
var locked = body.is_physics_locked();
body.set_physics_locked(false);

Použití a omezení#

Platné síly/impulzy během zámku nevyvolají pohyb a neukládají se na později. Změna pózy, rychlosti, typu pohybu nebo Sensoru je do odemčení odmítnuta. Dočasný zámek od běžného Static rozliší is_physics_locked(). Setter při chybě vrací false; ihned čtěte jolt_get_error_message().

Odmítají se senzory, Soft Body, držená tělesa a účastníci vazeb, vozidel, ovládacích prvků, připojené postavy, dopravníků, vah či aktivní penetrace. Běžný kontakt zámku nebrání.

Volitelné grabber.set_unlock_physics_locked(true) je výchozí vypnuté. Odemyká až při úspěšném přípustném uchopení; původní Static/Kinematic se nemění na Dynamic. Puštění znovu nezamkne. Stav patří pouze runtime, nikoli Blender JSON.

Přehled API#

Signatury veřejných funkcí a metod. Metody volejte na vrácené instanci; parametry s výchozí hodnotou jsou volitelné.

Související návody#

Ověřené kontrakty operací#

Následující kontrakty rozlišují jednotky, návratové hodnoty, chyby a životnost podle aktuální implementace. Nevynechávej kontrolu výsledku: false, 0 a undefined mohou mít u různých metod odlišný význam.

Symbol / vlastníkSignaturaKontrakt operace
JoltBody.is_physics_lockedJoltBody.is_physics_locked()Dočasný světový zámek samostatného tělesa, odemknutí z klidu. Setter Boolean/0/1 → Boolean, getter Boolean false i při chybě. Native může odmítnout mechanismus či nepodporovaný stav.
JoltBody.set_physics_lockedJoltBody.set_physics_locked(locked)Dočasný světový zámek samostatného tělesa, odemknutí z klidu. Setter Boolean/0/1 → Boolean, getter Boolean false i při chybě. Native může odmítnout mechanismus či nepodporovaný stav.