1.1 KiB
1.1 KiB
STEP-047 Playback Tick 根因修复
状态:IMPLEMENTED / WAITING FOR ANDROID RE-VALIDATION
Android Validation Round 2:PARTIAL / NEEDS FIX
PLAY 和 speed JNI command 均返回 SUCCESS;短暂的 TIME_MIX_UPDATE 后 mix 停止,但 State/Trail/Composite 与 RenderThread 持续运行。根因是 RasterArrayTimelineRuntime::tick() 只在 RenderRasterParticleLayer::update() 中调用;该函数只在 render tree/update 生命周期进入,不是每个已构建 drawable frame。
修复
将 Source-owned timeline tick 接入既有 ParticleGpuValidationTweaker::execute() 的 State pass。State drawable 每个正式粒子 simulation frame 执行一次;Trail、Composite 与 world copy 不 tick。因此不需要 Android Timer、每帧 JNI、新线程或循环。Tweaker 将本帧 Core mix 写回现有 resources UBO;现有 layer update 仍负责资源/窗口变更。
新增约每秒一次 PLAYBACK_TICK heartbeat,含 state、speed、cursor、mix、window、fieldUploadCount、simulationResetCount。
Round 3 P1--P4 待用户 Android 验证。未执行 Android Gradle、ADB 或 Jest。