JianFeeeee
34ed70ab53
修复视距不生效 + 接入统一测试
视距(用户报「无法调整视距?」)——根因是三处不同步:
1. options.renderDistance 本地设置(原先只设了这个)
2. options.setServerRenderDistance 服务端下发上限(getEffectiveRenderDistance = min(两者))
3. ClientChunkCache.updateViewRadius storage 半径
第三处最关键:官方只在收到服务端半径包时才调它(ClientPacketListener:2316),
我们不连服 ⇒ Storage.inRange 用旧半径判定,超出区块被**静默丢弃**。
另一个前置:加载半径必须跟随视距。视距 12 只喂 3 圈数据,
画面看起来就像没生效(最容易误判的坑)。
实测(同相机同存档):
视距 4 → 注入 81 渲染 55 色彩 15226
视距 12 → 注入 595 渲染 447 色彩 18477
画面差异显著:RD=12 能看到延伸到地平线的森林与完整海岸线。
(sample-render-distance-{4,12}.png)
测试:新增 tests/test_anvil.py(13 项,存档/NBT/编码)
tests/test_render_bridge.py(3 项,桥协议+合成渲染+真实存档渲染)
run_tests.sh 改为默认跑单元测试、--with-render 跑联测
合计 61 项全绿(原 48 + 13)
2026-09-25 17:47:58 +08:00
..
2026-09-25 17:47:58 +08:00
2026-09-25 14:12:06 +08:00
2026-09-25 17:33:41 +08:00
2026-09-25 14:25:34 +08:00
2026-09-25 14:36:21 +08:00
2026-09-25 14:36:21 +08:00
2026-09-25 14:36:21 +08:00
2026-09-25 14:10:40 +08:00
2026-09-25 17:33:41 +08:00
2026-09-25 17:47:58 +08:00
2026-09-25 14:06:55 +08:00
2026-09-25 14:33:26 +08:00