Files
MapLibreParticleLab/docs/50_Step记录/STEP-055_Android真实WeatherV2风场综合可视化_v6.md
OpenAI Codex f926a3f007
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
fix: stabilize particle visibility across zoom levels
2026-09-05 11:20:33 +08:00

1.4 KiB
Raw Blame History

STEP-055 Android 真实 WeatherV2 风场综合可视化 v6

状态:IMPLEMENTED / WAITING_ANDROID_VALIDATION

Starting HEAD:067bfdc38baa32d6e474a502d67bc0910d18e247

低缩放可见性与 Trail 稳定性修复

  • visual scale 使用 effectiveScale = clamp(1200 * 2^(9 - zoom), 300, 153600);simulation step 再限制为最多 2400 seconds/frame。典型 60 FPS:z2≈2400(cap)、z5≈320、z9≈20 simulation seconds/frame。
  • canonical U/V=m/s 与 m/s→Web Mercator 物理换算未改;只是 validation visual clock 依据 zoom 保持可见的屏幕位移。
  • 生命周期改为 real seconds:base=12,hash jitter 后为 9–15 real seconds;State B 使用 wall delta,不再使用 simulation delta,因此 zoom、Timeline speed、Timeline Pause 不改变寿命。
  • 普通 camera transform 首次触发 CAMERA_INVALIDATE,暂停 Trail segment 累积而 State 继续;连续操作不重复重建 texture;150ms 稳定后 CAMERA_STABLE_RESUME。仅真正 viewport size 改变才 VIEWPORT_RESIZE 并重新分配 Trail A/B。

State Float、Trail UByte、真实 previous→current segment、respawn/hash stagger、time-based fade、canonical、Timeline、Runtime Window、WeatherColorLayer 和 REAL WEATHER UI 保持不变。

shader generator、Linux OpenGL 精确编译、既有非 Jest style layer 精确编译和 git diff --check 已通过;Android 与 Jest 未执行。