Plane
Vytvoří nekonečnou matematickou collision rovinu pro Static geometrii.
Bod x,y,z leží na rovině a normal míří ven z jejího solid half-space. Plane je vhodná pro jednoduché podlahy, stěny a testovací hranice, když není potřeba konečný Box nebo Mesh.
Syntaxe#
jolt_plane_create_static(x, y, z, normal_x, normal_y, normal_z, options=undefined)Argumenty#
| Argument | Typ | Popis |
|---|---|---|
| x, y, z | Real | World-space bod na rovině a body origin. |
| normal_x, normal_y, normal_z | Real | Konečná nenulová lokální normal; automaticky se normalizuje. |
| options | Struct | Společné Static body options a half_extent. |
Solid strana a extent#
Half-space opačný vůči normal je solid. U běžné podlahy jolt_plane_create_static(0,0,0,0,0,1) je pevná oblast pod XY rovinou a bodies kolidují shora.
options.half_extent má default 1000, musí být konečný a > 0. Omezuje pouze broad-phase discovery; matematickou rovinu nezmění na konečný čtverec. Pokud má collision končit na viditelném okraji, použijte Box nebo Mesh.
Options a návrat#
Vrací Static JoltBody nebo undefined. Relevantní options jsou rotation, rotation_euler, friction, restitution, layer, sensor, center_of_mass_offset a half_extent. Dynamic-only mass nebo velocity selžou atomicky.
Reusable JoltShape#
var shape = jolt_shape_plane(normal_x, normal_y, normal_z,
half_extent=1000, cache_key=undefined);
var floor = shape.create_static(x, y, z, options);shape.create_dynamic() a create_kinematic() jsou odmítnuty. Uložená normal je normalizovaná. jolt_shape_load() podporuje Plane .jcol resources.
Low-Level / Advanced API#
Plane je vystavena přes reusable resource transport, nikoli vyhrazenou low-level body funkci. Použijte jolt_plane_create_static() nebo jolt_shape_plane().
Příklad#
var floor = jolt_plane_create_static(0, 0, 0, 0, 0, 1, {
half_extent: 40,
friction: 0.8
});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_plane_create_static | jolt_plane_create_static(x = 0, y = 0, z = 0, normal_x = 0, normal_y = 0, normal_z = 1, options = undefined) | Statická rovina, pozice default 0, normála+Z a half_extent1000m. Nenulová normála se normalizuje, extent>0; JoltBody/undefined. |