Files
workinf_Blender_Wasm/docs/status/N-014.md
mes123456 0fe8d2bb56
Some checks failed
M6 deployable RC / quick (push) Has been cancelled
M6 deployable RC / chromium (push) Has been cancelled
M6 deployable RC / release (push) Has been cancelled
Advance M8-M11 parity workflows
2026-08-17 04:37:07 -04:00

34 lines
2.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# N-014 NLA
状态:`in_progressAction Clip Main/求值 + reverse/repeat 子集)`
详细分解、AnimationIR strip/track、Main 编辑、原生 NLA 求值、UI、GLB 映射和验收命令见
[`docs/UNDECLARED_CAPABILITIES_EXECUTION_PLAN.md`](../UNDECLARED_CAPABILITIES_EXECUTION_PLAN.md)。
本轮已交付 `NlaTrackIR`/`NlaStripIR`、Action 存在性、owner/path、稳定排序、不重叠、
range/scale/repeat/influence 一致性、blend/extrapolation 和 time-warp 阻断。SceneIR reader
可恢复 Track/Action Clip 摘要;`setNLAStack` 以整栈替换事务写 Blender Main并经过
undo 历史、保存重开和 frame 5 native depsgraph 求值。Action Clip `reverse` 已映射到
Blender `NLASTRIP_FLAG_REVERSE`reader 可恢复该标志;反向正例得到预期线性位置约
`[0.555556, 1.111111, 1.666667]`
同一正例已扩为 `repeat=2`frame 5 与第二周期 frame 14 的 native Depsgraph 矩阵一致。
M10-11 另以桌面 Blender 5.2 生成只读 fixture同一 Track 包含 scale=2 的正向 Clip 和
reverse + repeat=2 的 Clip。桌面、Node WASM 与生产 Chromium Worker 在 12 个边界/周期帧上
逐矩阵比较,最大误差为 0每帧求值前后的 Track/Strip/Action JSON 完全一致。本切片不调用
`setNLAStack`,不提前关闭细粒度 operator 工作。
当前只支持单对象 Action Clip、正 scale、Replace/Add/Multiply/Combine 和有限外插。
M10-12 仅新增 `moveNLAStrip`,以 revision gate 和单次 Main transaction 保留时长移动现有 Clip
并已通过 undo/redo 与保存重开。Transition/Meta/Sound、Animated Time、Drivers、其余
create/remove/resize/active 命令、NLA UI、
骨骼/约束混合矩阵及 GLB 展开仍为 planned/结构化阻断。
M10-15 冻结 4,096 tracks、每 track 16,384 strips、总 65,536 strips 及 ID/name/reason 字节预算,
拒绝未声明字段。隔离 Chromium Worker 对 20 次 256-strip stack、超 track budget、恶意字段和
同会话小 stack 恢复分别建立 performance/OOM-prevention/malicious-input 门。
验收:`npm --prefix web run test:nla-evaluation-golden``npm --prefix web run test:nla-operator`
`npm --prefix web run test:authoring-roundtrip`
`npm --prefix web run test:capability-gates``npm --prefix web run test:m10-domain-gates`