code wiki / _hdl_build / nx_procgen_gtlabels_gate.nx

nx_procgen_gtlabels_gate.nx

buildroot/runtime/_hdl_build/nx_procgen_gtlabels_gate.nx

7237 B104 linesdepth 4pulls 7 transitivereach 0 importersview sourcekind gate/prooftopic procgen
docsdependenciesstructsconstsfunctions

about

nx_procgen_gtlabels_gate.nx -- Gx/PROCGEN: the digital-twin GROUND-TRUTH TRIO from REAL heightfield geometry. One procedural terrain (FBM heightfield) emitted 4 ways in aligned panels: (1) shaded-relief RGB, (2) DEPTH map (elevation, grayscale), (3) NORMAL map (surface normal from the height gradient, standard tangent-space RGB encoding), (4) SEGMENTATION map (flat class by altitude + water). Depth + normals are GENUINE (computed from the heightfield gradient, not faked) -- exactly the multi-channel per-pixel label an ML-training or digital-twin pipeline consumes (Infinigen's signature output). Integer/sovereign/asset-free. Completes ground-truth-labels. license_tier: ORIGINAL expect_exit: 0

dependencies 3 imports · 0 importers

nx_png_write.nx nx_vecmath.nx nx_gate_verdict.nx nx_procgen_gtlabels_gate.nx

imports: nx_png_write.nxnx_vecmath.nxnx_gate_verdict.nx

imported by: nobody (leaf or entry point)

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

main gl_puts gl_fbm gl_vnoise gl_hash gl_smooth gl_isqrt vm_isqrt nx_png_write_rgb sys_openat_wr sys_mmap nxa_die sys_write sys_exit nxa_lock_take nxa_lock_addr sys_write ↻ nxa_lock_give nxa_lock_addr ↻ nxa_report_overrun sys_write ↻ nxa_dump_printable sys_write ↻ nxa_dump_sizes sys_write ↻ sys_write ↻ pw_chunk pw_u32be sys_mmap ↻ sys_write ↻ sys_write ↻ pw_crc_block dfe_compress sys_mmap_try sys_munmap_direct dfe_fill_tables dfe_deflate sys_mmap_try ↻ dfe_bits dfe_hash

structs

none

consts

none

functions

12func gl_puts(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
13func gl_pn(v: i64) -> i64 { let b: *u8=sys_mmap(32) as *u8; var x: i64=v; var ng: i64=0; if x<0{ng=1;x=0-x} var i: i64=31; if x==0{b[i]=48 as u8;i=i-1} while x>0{b[i]=(48+x%10) as u8;x=x/10;i=i-1} if ng==1{b[i]=45 as u8;i=i-1} sys_write(1,(b as i64+i+1) as *u8,31-i); return 0 }
called by 1: main
16func gl_isqrt(n: i64) -> i64 { return vm_isqrt(n) }
called by 1: main calls 1: vm_isqrt
17func gl_hash(x: i64, y: i64, seed: i64) -> i64 { var a: i64=(x+1)*73856093+(y+1)*19349663+(seed+1)*83492791; a=a%16777216; if a<0{a=a+16777216} a=(a*1103515245+12345)%16777216; if a<0{a=a+16777216} return a%4096 }
called by 1: gl_vnoise
18func gl_smooth(t: i64) -> i64 { let t2: i64=(t*t)/4096; return (t2*(3*4096-2*t))/4096 }
called by 1: gl_vnoise
19func gl_vnoise(px: i64, py: i64, lat: i64, sz: i64, seed: i64) -> i64
called by 1: gl_fbm calls 2: gl_hashgl_smooth
27func gl_fbm(px: i64, py: i64, sz: i64, seed: i64) -> i64
called by 1: main calls 1: gl_vnoise
34func main() -> i64