nx_face_feature_gate_t367.nx source
↩ module page · 42 lines · 2293 B
1// nx_face_feature_gate_t367.nx -- reusable feature-preservation referee for the canonical procedural face.
2// Composes existing nx_faceanat and nx_sdfrender owners; it does not tune or publish an asset.
3// A pass means the generated geometry retains measurable palpebral fissures and a measurable lip profile.
4// license_tier: ORIGINAL
5import "nx_syscalls.nx"
6import "nx_sdfrender.nx"
7import "nx_faceanat.nx"
8const FFG_EXIT_USAGE: i64 = 2
9const FFG_EXIT_REFUSE: i64 = 1
10const FFG_FACE_SIZE: i64 = 1
11const FFG_ARENA_PART_CAPACITY: i64 = 48
12const FFG_EYE_FIELDS: i64 = 9
13const FFG_LIP_FIELDS: i64 = 11
14const FFG_LEFT_EYE: i64 = 0 - 1
15const FFG_RIGHT_EYE: i64 = 1
16const FFG_EYE_OUT_BYTES: i64 = FFG_EYE_FIELDS * 8
17const FFG_LIP_OUT_BYTES: i64 = FFG_LIP_FIELDS * 8
18func main(argc: i64, argv: *i64) -> i64 {
19 if argc != FFG_FACE_SIZE { return FFG_EXIT_USAGE }
20 let arena: *u8 = sys_mmap(sdf_bytes())
21 if (arena as i64) == 0 { return FFG_EXIT_REFUSE }
22 sdf_clear_ops(arena as i64, FFG_ARENA_PART_CAPACITY)
23 sdf_set_floor(arena as i64, 0)
24 if faceanat_build(arena as i64) != 0 { return FFG_EXIT_REFUSE }
25 let left: *i64 = sys_mmap(FFG_EYE_OUT_BYTES) as *i64
26 let right: *i64 = sys_mmap(FFG_EYE_OUT_BYTES) as *i64
27 if (left as i64) == 0 || (right as i64) == 0 { return FFG_EXIT_REFUSE }
28 if fa_palpebral_fissure(arena as i64, FFG_LEFT_EYE, left) != 0 { return FFG_EXIT_REFUSE }
29 if fa_palpebral_fissure(arena as i64, FFG_RIGHT_EYE, right) != 0 { return FFG_EXIT_REFUSE }
30 let lip: *i64 = sys_mmap(FFG_LIP_OUT_BYTES) as *i64
31 if (lip as i64) == 0 { return FFG_EXIT_REFUSE }
32 if fa_lip_ratio(arena as i64, lip) != 0 { return FFG_EXIT_REFUSE }
33 let genes: *i64 = sys_mmap(6 * 8) as *i64
34 if (genes as i64) == 0 { return FFG_EXIT_REFUSE }
35 genes[0] = 50; genes[1] = 100; genes[2] = 100; genes[3] = 581; genes[4] = 0; genes[5] = 0
36 if faceanat_eye_genes(arena as i64, genes) != 0 { return FFG_EXIT_REFUSE }
37 if faceanat_build(arena as i64) != 0 { return FFG_EXIT_REFUSE }
38 if fa_palpebral_fissure(arena as i64, FFG_LEFT_EYE, left) != 0 { return FFG_EXIT_REFUSE }
39 if fa_palpebral_fissure(arena as i64, FFG_RIGHT_EYE, right) != 0 { return FFG_EXIT_REFUSE }
40 if fa_lip_ratio(arena as i64, lip) != 0 { return FFG_EXIT_REFUSE }
41 return 0
42}