Files
MapLibreParticleLab/docs/报告/STEP-055_Android真实WeatherV2风场综合可视化_Codex完成报告_v7.md
OpenAI Codex 44a50e6e4a
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
docs: record STEP-055 weather UBO initializer fix
2026-09-05 13:43:15 +08:00

1.9 KiB
Raw Blame History

STEP-055 Android 真实 WeatherV2 风场综合可视化 Codex 完成报告 v7

Starting HEAD / remote:4645280fc59ac8e356f4339bb7fad5d73b4a413a,origin/particle/main。

本任务是 Android C++ 编译遗漏的小修复。v9 扩展 ParticleGpuValidationUBO 时,WeatherColorLayer 的 designated initializer 缺少 respawnBounds,在 Android 的 -Wmissing-designated-field-initializers -Werror 下失败。

修改

修改文件:src/mbgl/renderer/layers/render_weather_color_layer.cpp。

WeatherColorLayer initializer 现在按 struct 顺序写入 fieldBounds、respawnBounds、fieldScale、matrix。它不参与 viewport particle respawn,故 respawnBounds = bounds(resources->t0),与其 fieldBounds 相同,保持中性范围和原色场行为。

完整 C++ initializer 搜索结果:

  1. src/mbgl/renderer/layers/render_particle_validation_layer.cpp:已包含 respawnBounds。
  2. src/mbgl/renderer/layers/render_weather_color_layer.cpp:本次补齐 respawnBounds。

没有其他 consumer 遗漏。

验证

  • shader generator:PASS。
  • Linux OpenGL 精确编译 render_particle_validation_layer.cpp:PASS。
  • Linux OpenGL 精确编译 render_weather_color_layer.cpp:PASS。
  • 既有非 Jest style_layer.test.cpp 精确编译:PASS。
  • 全部 ParticleGpuValidationUBO initializer 搜索/字段检查:PASS。
  • git diff --check:PASS。
  • Android Gradle/APK/ADB/设备和 Jest:未执行。

未修改 viewport-aware respawn、zoom-aware visual speed、wall-time lifecycle、Trail camera invalidate/resume、canonical U/V、WeatherColorLayer 颜色场、Timeline、Runtime Field Window 或 particleCount。

功能提交:f0658e0a222508bbb8bf2f627546e8628dcde6fa(fix: initialize particle respawn bounds in weather layer),已成功 push 至 origin/particle/main。本报告随后以独立文档提交记录,不改变功能实现。

最终状态:IMPLEMENTED / WAITING_ANDROID_VALIDATION。