‹
Shape Resources

Životní cyklus resource

Wrapper, cache a tělesa drží samostatné native reference. Zničení JoltShape uvolní referenci wrapperu; cache a již vytvořená tělesa mohou geometrii držet dál. Vyčištění cache proto nezaručuje okamžité uvolnění veškeré paměti geometrie.

APIChování
shape.is_valid()Ověřuje živý resource; po zničení nebo ukončení světa false.
shape.get_native_handle()Opaque handle, při neplatnosti nula. Nepovažujte jej za pointer.
shape.destroy()Idempotentní uvolnění; wrapper následně nepoužívejte pro nová tělesa ani dotazy.
GML
// If retained across events:
if (!is_undefined(shape)) {
    shape.destroy();
    shape = undefined;
}
// Central controller Cleanup event:
jolt_stop();

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
JoltShape._createJoltShape._create(motion, x, y, z, options)Vytvoří nové JoltBody/undefined, XYZ default 0, standardní Body options. Mesh/Heightfield/Plane pouze Static; resource zůstává použitelný. _create je implementační delegát s explicitním motion, pro aplikaci používej create_* varianty.
JoltShape.destroyJoltShape.destroy()Native ověření vrací Boolean, handle nebo0. Destroy Boolean idempotentní, uvolní resource handle; existující body/compound drží vlastní native reference a zůstanou živé.
JoltShape.get_native_handleJoltShape.get_native_handle()Native ověření vrací Boolean, handle nebo0. Destroy Boolean idempotentní, uvolní resource handle; existující body/compound drží vlastní native reference a zůstanou živé.
JoltShape.is_validJoltShape.is_valid()Native ověření vrací Boolean, handle nebo0. Destroy Boolean idempotentní, uvolní resource handle; existující body/compound drží vlastní native reference a zůstanou živé.