nx_webviz_research.nx source
↩ module page · 42 lines · 3228 B
1// nx_webviz_research.nx -- THIN structured BROWSER-VISUALIZATION / GAME-LIBRARY research source organ.
2// Banks the REAL cutting-edge in-browser stack the operator named (Three.js/PixiJS/Babylon/Phaser/PlayCanvas/
3// d3.js/WebGL/WebGPU/GLSL/PBR) as MEASURED YARDSTICKS so the visual/game census can grade EXCEED/PARITY/BEHIND
4// against reality -- NOT self-score. Composes nx_research_engine (same pattern as nx_gfx_research); NO copy-pasted loop.
5// Distinct from nx_gfx_research (native APIs: DirectX/Vulkan/Metal/OpenGL) -- this is the BROWSER yardstick set.
6// expect_exit: 0 license_tier: ORIGINAL Sovereign: nx_research_engine over TLS-1.3.
7import "nx_research_engine.nx"
8const K_MAGIC_8388608: i64 = 8388608
9
10func main() -> i64 {
11 let store: *TrustStore = rf_init()
12 if (store as i64) == 0 { rf_puts("webviz: trust store load failed\n" as *u8); return 1 }
13 rf_puts("CA roots="); rf_putn(trust_store_count(store)); rf_puts(" -- BROWSER-VIZ / GAME-LIB yardsticks -> Library\n" as *u8)
14 let cap: i64 = K_MAGIC_8388608
15 let out: *u8 = sys_mmap(cap)
16 var ok: i64 = 0
17
18 rf_section("in-browser game/render engines (the real competition for our games)" as *u8)
19 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/Three.js" as *u8, "wv_threejs" as *u8, store, out, cap)
20 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/Babylon.js" as *u8, "wv_babylon" as *u8, store, out, cap)
21 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/PixiJS" as *u8, "wv_pixi" as *u8, store, out, cap)
22 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/Phaser_(game_framework)" as *u8, "wv_phaser" as *u8, store, out, cap)
23 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/PlayCanvas" as *u8, "wv_playcanvas" as *u8, store, out, cap)
24 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/Godot_(game_engine)" as *u8, "wv_godot" as *u8, store, out, cap)
25
26 rf_section("the GPU-in-browser substrate we do NOT have wired to rendering" as *u8)
27 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/WebGL" as *u8, "wv_webgl" as *u8, store, out, cap)
28 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/WebGPU" as *u8, "wv_webgpu" as *u8, store, out, cap)
29 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/OpenGL_Shading_Language" as *u8, "wv_glsl" as *u8, store, out, cap)
30 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/Physically_based_rendering" as *u8, "wv_pbr" as *u8, store, out, cap)
31
32 rf_section("data visualization (d3.js and the in-browser dataviz cutting edge)" as *u8)
33 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/D3.js" as *u8, "wv_d3" as *u8, store, out, cap)
34 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/Data_visualization" as *u8, "wv_dataviz" as *u8, store, out, cap)
35
36 rf_section("browser delivery surfaces (our own render target)" as *u8)
37 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/Canvas_element" as *u8, "wv_canvas" as *u8, store, out, cap)
38 ok = ok + rf_fetch_bank("https://en.wikipedia.org/wiki/WebAssembly" as *u8, "wv_wasm" as *u8, store, out, cap)
39
40 rf_puts("WEBVIZ BANKED: "); rf_putn(ok); rf_puts(" / 14 (run nx_library_harvest_v2 to index)\n" as *u8)
41 return 0
42}