Files
MapLibreParticleLab/docs/报告/STEP-067_MapLibreParticleLab_V3-03_ScalarGPU与GenericFieldRenderer_Codex完成报告_v1.md
OpenAI Codex 89c72554c5
Some checks failed
validate-scripts / validate-scripts (push) Has been cancelled
docs: close STEP-067 scalar GPU renderer
2026-09-11 07:05:46 +08:00

2.3 KiB
Raw Permalink Blame History

STEP-067 MapLibreParticleLab V3-03 Scalar GPU 与 Generic Field Renderer Codex 完成报告

状态:CLOSED / PASS

生产代码修改

  • weather_color_layer.* 与 weather_color_stop.hpp:增加明确 FieldValueSource(默认 VectorMagnitude),将 color stop 的 C++ 内部字段改为 generic value。
  • render_weather_color_layer.cpp:同一 renderer 按 source 显式上传 scalar 或 vector bundle,A 写 shared validity;source 不匹配时 unavailable。切换 source 不复用旧的不同编码,正常同 source rollover 继续重用 immutable decoded bundle。
  • particle_gpu_validation.fragment.glsl 与生成的 OpenGL header:Weather pass 用 UBO flag 选择 scalar 或 vector magnitude,分别对 T0/T1 做数值插值后进入通用 ramp;默认 ramp 保留旧 Wind 的 0..30 数值外观,但不再声明固定 m/s 单位。
  • render_particle_validation_layer.cpp:Particle 仅接受 vector + Velocity;scalar 或 Direction 清理粒子资源、不可绘制。粒子 shader 的物理 U/V 计算未改变。

验证结果

shader generator、三个受影响 C++ 编译对象、Source.ParticleFieldV3* 与 WeatherColor layer 过滤测试、git diff --check 均 PASS,命令输出均经 build-output-throttle 限流。此前受限终端未完成的全量重链,已由用户在当前 HEAD(06fcbef9ccb820e595f06acbd356950de7e3a73f)手工执行 ninja -C build-linux-opengl -j3 mbgl-test mbgl-test-runner 收尾,输出为 ninja: no work to do.;因此确认 mbgl-test、mbgl-test-runner 的完整目标和依赖已最新,没有待处理的构建或重链接工作。

该手工 Ninja 结果不等于重新执行全量测试用例:本次未重跑完整测试套件,只确认构建/重链接目标无待处理工作。

未执行 Android Gradle、AAR、APK、ADB 或 Jest;未触碰 STEP-062 用户修改、历史 untracked、build/cache/tgz。

Git 收尾

实现基线提交为 06fcbef9ccb820e595f06acbd356950de7e3a73f(docs: record STEP-067 scalar GPU renderer)。本次关闭仅提交 STEP-067 任务归档、Step 记录、完成报告和开发记录;不会暂存 STEP-062 用户修改、历史未跟踪文件、build/cache 或 tgz。关闭提交 hash、push 结果与最终 HEAD == origin/particle/main 复核见本次交付终端回执。