code wiki / (root) / nx_gm_cloth_lib.nx

nx_gm_cloth_lib.nx

buildroot/runtime/nx_gm_cloth_lib.nx

15224 B309 linesdepth 6pulls 8 transitivereach 3 importersview sourcekind librarytopic gm
docsdependenciesstructsconstsfunctions

about

nx_gm_cloth_lib.nx -- LIB: the PG29 cloth XPBD solver (gm_xpbd_step and its edge/area rulers). Split out of nx_nxa_garment so the GATE can import it without colliding with the generator's main(); the garment organ imports this lib and carries a REAL call (the xpbdcheck verb), so its PG29 watch-row flip is backed by wiring, not a name in a comment. license_tier: ORIGINAL No hw writes (Rule 26).

dependencies 1 imports · 3 importers

nx_softtissue.nx nx_gm_cloth_lib.nx nx_gm_xpbd_audit_t138.nx nx_gm_xpbd_gate.nx nx_nxa_garment.nx

imports: nx_softtissue.nx

imported by: nx_gm_xpbd_audit_t138.nxnx_gm_xpbd_gate.nxnx_nxa_garment.nx

structs

none

consts

29const GM_EROW: i64 = 4
30const GM_C_STRUCT: i64 = 0
31const GM_C_SHEAR: i64 = 1
32const GM_C_BEND: i64 = 2
34const GM_SKIN: i64 = 2

functions

36func gm_isqrt(n: i64) -> i64
48func gm_dist(v: *i64, a: i64, b: i64) -> i64
called by 3: gm_edges_buildmainmain calls 1: gm_isqrt
57func gm_edges_build(verts: *i64, nu: i64, nv2: i64, edges: *i64) -> i64
called by 1: main calls 1: gm_dist
106func gm_xpbd_step(verts: *i64, vel: *i64, nvv: i64,
196func gm_xpbd_step_banked(verts: *i64, vel: *i64, nvv: i64,
called by 4: mainxg_runmainmain calls 1: gm_xpbd_step
222func gm_area2(verts: *i64, nu: i64, nv2: i64) -> i64
called by 1: main calls 1: gm_isqrt
265func gm_capsule_project(verts: *i64, vel: *i64, nvv: i64,
called by 2: mainmain calls 1: gm_isqrt