Shape Resources
Primitivní resources
Rozměry musí být konečné. Jde o managed konvenci celých rozměrů; nevkládejte do těchto konstruktorů přímo low-level poloviční rozměry.
| API | Chování |
|---|---|
| jolt_shape_box(width, depth, height, cache_key=undefined) | Kladné celé rozměry. |
| jolt_shape_sphere(radius, cache_key=undefined) | Kladný poloměr. |
| jolt_shape_capsule(height, radius, cache_key=undefined) | Celková výška > 2 × poloměr; poloměr kladný. |
| jolt_shape_cylinder(height, radius, cache_key=undefined) | Kladná celková výška a poloměr. |
| jolt_shape_tapered_capsule(height, top_radius, bottom_radius, cache_key=undefined) | Oba poloměry kladné; celková výška > 2 × větší poloměr. |
| jolt_shape_tapered_cylinder(height, top_radius, bottom_radius, cache_key=undefined) | Kladná výška, nezáporné poloměry, alespoň jeden kladný. |
| jolt_shape_plane(nx, ny, nz, half_extent=1000, cache_key=undefined) | Nenulová normála; pouze statická nekonečná rovina/záporný poloprostor. half_extent ovlivňuje bounds, ne konečný kolizní okraj. |
var capsule_shape = jolt_shape_capsule(1.8, 0.4);
if (is_undefined(capsule_shape)) {
show_debug_message(jolt_get_error_message());
} else {
var body = capsule_shape.create_dynamic(0, 0, 3);
capsule_shape.destroy();
}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 |
|---|---|---|
| jolt_shape_box | jolt_shape_box(width, depth, height, cache_key = undefined) | Opakovatelný JoltShape/undefined v managed světě: plné kladné width/depth/height v m. Volitelný cache_key je identita, nikoliv hash geometrie; existující klíč může vrátit dřívější geometrii. Mesh/Heightfield/Plane pouze Static. |
| jolt_shape_capsule | jolt_shape_capsule(height, radius, cache_key = undefined) | Opakovatelný JoltShape/undefined v managed světě: celková výška>2*radius, radius>0 m. Volitelný cache_key je identita, nikoliv hash geometrie; existující klíč může vrátit dřívější geometrii. Mesh/Heightfield/Plane pouze Static. |
| jolt_shape_cylinder | jolt_shape_cylinder(height, radius, cache_key = undefined) | Opakovatelný JoltShape/undefined v managed světě: výška/radius>0 m. Volitelný cache_key je identita, nikoliv hash geometrie; existující klíč může vrátit dřívější geometrii. Mesh/Heightfield/Plane pouze Static. |
| jolt_shape_plane | jolt_shape_plane(normal_x, normal_y, normal_z, half_extent = 1000, cache_key = undefined) | Opakovatelný JoltShape/undefined v managed světě: nenulová normála normalizovaná, half_extent>0 m default 1000. Volitelný cache_key je identita, nikoliv hash geometrie; existující klíč může vrátit dřívější geometrii. Mesh/Heightfield/Plane pouze Static. |
| jolt_shape_sphere | jolt_shape_sphere(radius, cache_key = undefined) | Opakovatelný JoltShape/undefined v managed světě: kladný radius v m. Volitelný cache_key je identita, nikoliv hash geometrie; existující klíč může vrátit dřívější geometrii. Mesh/Heightfield/Plane pouze Static. |
| jolt_shape_tapered_capsule | jolt_shape_tapered_capsule(height, top_radius, bottom_radius, cache_key = undefined) | Opakovatelný JoltShape/undefined v managed světě: výška>2*největší radius, oba radius>0. Volitelný cache_key je identita, nikoliv hash geometrie; existující klíč může vrátit dřívější geometrii. Mesh/Heightfield/Plane pouze Static. |
| jolt_shape_tapered_cylinder | jolt_shape_tapered_cylinder(height, top_radius, bottom_radius, cache_key = undefined) | Opakovatelný JoltShape/undefined v managed světě: výška>0, radius>=0 a alespoň jeden>0. Volitelný cache_key je identita, nikoliv hash geometrie; existující klíč může vrátit dřívější geometrii. Mesh/Heightfield/Plane pouze Static. |