code wiki / _hdl_build / nx_skeleton_gate.nx

nx_skeleton_gate.nx

buildroot/runtime/_hdl_build/nx_skeleton_gate.nx

7580 B156 linesdepth 4pulls 6 transitivereach 0 importersview sourcekind gate/proof
docsdependenciesstructsconstsfunctions

about

nx_skeleton_gate.nx -- gate for SKELETON + LBS SKINNING (the character-foundation rung; VAMX R3). T1 hierarchy compose: a 2-bone arm posed at known angles -> child world position matches the HAND-COMPUTED value (integer-trig tolerance) T2 skin follows the pose: a vertex rigidly bound to the forearm lands exactly at its rotated position T3 blend: a joint vertex weighted 128/128 lands midway between the two bones' rigid transforms T4 determinism: pose->skin twice, outputs byte-identical T5 PNG knowledge/nx_skeleton_arm.png: a skinned 2-bone tube STRAIGHT vs BENT 90deg -- smooth joint visible license_tier: ORIGINAL expect_exit: 0

dependencies 3 imports · 0 importers

nx_syscalls.nx nx_png.nx nx_skeleton.nx nx_skeleton_gate.nx

imports: nx_syscalls.nxnx_png.nxnx_skeleton.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main sys_mmap sk_bytes mk_arm sk_init sk_hdr sk_add_bone sk_hdr ↻ sk_bone sk_pose sk_bone ↻ sk_update sk_hdr ↻ sk_vs sk_lr sk_bone ↻ sk_localrot it_cos4096 it_sin4096 it_sin4096 ↻ sk_matmul sk_matvec sk_bone ↻ gabs hw sys_write pn sys_mmap ↻ sys_write ↻ mk_tube sk_add_vert sk_hdr ↻ sk_vert sk_skin sk_hdr ↻ sk_vs ↻ sk_vert ↻ sk_out sk_bone ↻ sk_matvec ↻

structs

none

consts

none

functions

13func hw(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } sys_write(1, s, n); return 0 }
called by 1: main calls 1: sys_write
14func pn(v: i64) -> i64
called by 1: main calls 2: sys_mmapsys_write
26func gabs(v: i64) -> i64 { if v < 0 { return 0 - v } return v }
called by 1: main
29func mk_arm(base: i64) -> i64
called by 1: main calls 2: sk_initsk_add_bone
37func mk_tube(base: i64) -> i64
called by 1: main calls 1: sk_add_vert
59func main() -> i64