nx_gm_cloth_lib.nx
buildroot/runtime/nx_gm_cloth_lib.nx
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
imports: nx_softtissue.nx
imported by: nx_gm_xpbd_audit_t138.nxnx_gm_xpbd_gate.nxnx_nxa_garment.nx
structs
| none |
consts
| 29 | const GM_EROW: i64 = 4 |
| 30 | const GM_C_STRUCT: i64 = 0 |
| 31 | const GM_C_SHEAR: i64 = 1 |
| 32 | const GM_C_BEND: i64 = 2 |
| 34 | const GM_SKIN: i64 = 2 |
functions
| 36 | func gm_isqrt(n: i64) -> i64 |
| 48 | func gm_dist(v: *i64, a: i64, b: i64) -> i64 |
| 57 | func gm_edges_build(verts: *i64, nu: i64, nv2: i64, edges: *i64) -> i64 |
| 106 | func gm_xpbd_step(verts: *i64, vel: *i64, nvv: i64, |
| 196 | func gm_xpbd_step_banked(verts: *i64, vel: *i64, nvv: i64, |
| 222 | func gm_area2(verts: *i64, nu: i64, nv2: i64) -> i64 |
| 265 | func gm_capsule_project(verts: *i64, vel: *i64, nvv: i64, |