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.
| API | Chová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. |
// 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ík | Signatura | Kontrakt operace |
|---|---|---|
| JoltShape._create | JoltShape._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.destroy | JoltShape.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_handle | JoltShape.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_valid | JoltShape.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é. |