Adapt Android mobile controls and native client UI

This commit is contained in:
shen
2026-09-28 19:39:13 -07:00
parent a1ae69aa7a
commit 3c52ced02e
180 changed files with 688 additions and 23782 deletions
+8 -18
View File
@@ -1,22 +1,12 @@
# test/
# Test data
| 文件 / 目录 | 产出者 | 内容 |
|---|---|---|
| `golden/` | M1 起 | Godot 渲染的对拍截图(`m1-*.png` / `m2-*.png` / `m25-*.png`) |
| `bgfx-reference/` | 归档自 xrender-poc | bgfx demo 的同题材参考截图 + `render-samples/`。Godot 输出与之**结构化目视 + 直方图**对比(渲染器不同,不做像素比) |
| `assets.list` | xrender-poc M0 T9c | 精选 `.gr2`(多部件 / 全 4 级 LOD / 多 stage 材质 / 异常个例);里程碑对拍跑这套 |
| `assets-good.txt` | xrender-poc | 全量可解析清单 |
| `noise_floor.json` | xrender-poc M2 | 对拍噪声底:同 DLL 确定性 0、跨实现 ≤6.5e-5、epsilon=1e-3。Godot 对拍沿用此口径 |
| `m2-numeric.json` | `oracle/run-diff-suite.sh` | libgr2 vs Granny oracle 逐字段对拍结果(23 用例)。**libgr2 vendored 进本仓库后,这条链仍用 xrender-poc 时期建立的基线** |
| `godot-macos-stress.json` | M2 T2.7 | 1–100 角色 `_process` 帧时间 + 资产构建成本采样(供 Phase 2 A/B 决策,非门禁) |
| `compare.py` | mtgodot 回归 harness | 运行 CPU/GPU 固定时间截图;Godot 退出/超时/缺截图/0 surface/缺 selfcheck/NaN 为硬失败,CPU↔GPU 像素差暂作 advisory |
| `oracle_dumps/` | `run-diff-suite.sh`(gitignored) | oracle 二进制转储中间产物 |
`golden/` and `bgfx-reference/` contain historical reference screenshots. `assets.list` and `assets-good.txt` list asset samples; `m2-numeric.json` records Granny oracle comparisons.
## 跑 libgr2 回归
Build the asset tools without a UI engine:
```bash
cmake -B build-tools -DMTGODOT_BUILD_EXTENSION=OFF -DMTGODOT_BUILD_TOOLS=ON && cmake --build build-tools -j8
./build-tools/tools/gr2fuzz "$PWD/../m2dev-client-main/assets" # 全量解析:期望 9166/9166 ok
./oracle/run-diff-suite.sh # vs Granny:期望 23/23 PASS(需 Wine + oracle.exe)
ctest --test-dir build --output-on-failure # loader 损坏输入单测
```sh
cmake -S . -B build-tools -DMT_BUILD_TOOLS=ON
cmake --build build-tools -j8
```
The active 40250 port tests run through `script/port_gate.sh macos`. The native SDL/Vulkan client has its own acceptance runner, `script/native_mac_acceptance.mjs`.