Vlastnosti tělesa

Tlumení

Postupně omezuje linear a angular motion.

Damping působí přes motion properties body. Linear damping ovlivňuje translational velocity, angular damping rotační velocity.

High-Level API#

GML
body.set_linear_damping(value)
body.get_linear_damping()
body.set_angular_damping(value)
body.get_angular_damping()

Rozsah a defaulty#

VlastnostDefaultPlatná hodnota
linear_damping0.05Konečný Real >= 0
angular_damping0.05Konečný Real >= 0

Wrapper neurčuje horní maximum. Hodnota 0 daný damping vypne. Velmi vysoké hodnoty mohou pohyb odstranit rychle a způsobit necitlivé ovládání.

Omezení motion typu#

Damping vyžaduje motion properties. Dynamic a Kinematic bodies je mají; Static body nikoli. Selhaný setter vrací false a getter undefined.

Příklad#

GML
var body = jolt_box_create_dynamic(0, 0, 5, 1, 1, 1, {
    mass: 2,
    linear_damping: 0.15,
    angular_damping: 0.4
});

body.set_angular_damping(0.8);

Low-Level / Advanced API#

Settery vracejí true při úspěchu a false při neplatném vstupu, invalidním nebo stale body či nepodporovaném motion typu. Gettery vracejí požadovanou hodnotu nebo undefined při selhání. High-level chybu zjistíte přes jolt_get_error().

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.get_angular_dampingJoltBody.get_angular_damping()Konečné nezáporné tlumení; setter Boolean, getter číslo nebo undefined.
JoltBody.get_linear_dampingJoltBody.get_linear_damping()Konečné nezáporné tlumení; setter Boolean, getter číslo nebo undefined.
JoltBody.set_angular_dampingJoltBody.set_angular_damping(value)Konečné nezáporné tlumení; setter Boolean, getter číslo nebo undefined.
JoltBody.set_linear_dampingJoltBody.set_linear_damping(value)Konečné nezáporné tlumení; setter Boolean, getter číslo nebo undefined.