code wiki / _hdl_build / nx_creature_motion_gate.nx

nx_creature_motion_gate.nx

buildroot/runtime/_hdl_build/nx_creature_motion_gate.nx

6712 B150 linesdepth 6pulls 11 transitivereach 0 importersview sourcekind gate/prooftopic creature
docsdependenciesstructsconstsfunctions

about

nx_creature_motion_gate.nx -- SWAP + MOTION UNIFIED, proven: a swapped creature (horned, eared, tailed body) performs a MOVE and ships as a sovereign animated PNG, rendered on the production skin shader. This is the convergence of the two threads -- one reusable synthetic asset, diversified by swap slots, given motion->video. T1 valid APNG (acTL num_frames == N) T2 MOTION present (frame checksums differ -- the creature actually moves) T3 SWAP present (creaturepose part count > the 36 base parts -- horns/ears/tail were added) T4 body on screen (foreground coverage >= 4%) Writes knowledge/synth_beastman.png (APNG). license_tier: ORIGINAL expect_exit: 0

dependencies 7 imports · 0 importers

nx_syscalls.nx nx_sdfrender.nx nx_skeleton.nx nx_figure_render.nx nx_movelib.nx nx_creature_motion.nx nx_apng.nx nx_creature_motion_gate.nx

imports: nx_syscalls.nxnx_sdfrender.nxnx_skeleton.nxnx_figure_render.nxnx_movelib.nxnx_creature_motion.nxnx_apng.nx

imported by: nobody (leaf or entry point)

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

main hw sys_write sys_mmap sdf_bytes sk_bytes rig_build sk_init sk_hdr sk_add_bone sk_hdr ↻ sk_bone move_bytes move_gen mv_times mv_hdr mv_time mv_zero mv_pose mv_set mv_pose ↻ md_deg mv_hdr ↻ apng_open sys_mmap ↻ ap_be32 ap_chunk ap_be32 ↻ ap_crc32 move_pose_at mv_hdr ↻ mv_time ↻ mv_pose ↻ sk_pose sk_bone ↻ sk_update sk_hdr ↻ sk_vs sk_lr sk_bone ↻

structs

none

consts

50const RW: i64 = 128
51const RH: i64 = 96
52const RFOCAL: i64 = 146

functions

17func 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
18func pn(v: i64) -> i64
called by 1: main calls 2: sys_mmapsys_write
29func cksum(fb: *i64, n: i64) -> i64
called by 1: main
35func find4(buf: *u8, n: i64, a: i64, b: i64, c: i64, d: i64) -> i64
called by 1: main
43func plcount(fb: *i64, n: i64) -> i64
called by 1: main
54func cg_render(base: i64, fb: *i64, yaw: i64) -> i64
85func main() -> i64