From 7baa2c4f54853bd83742364b50d84c09769579e5 Mon Sep 17 00:00:00 2001 From: Zwitschi Date: Fri, 6 Nov 2026 08:35:29 +0100 Subject: [PATCH] Record the Quaternius pose-sync finding (swing axis needs per-bone calibration) --- TODO.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/TODO.md b/TODO.md index c479021..ec9d924 100644 --- a/TODO.md +++ b/TODO.md @@ -80,10 +80,14 @@ baseline sheet. leg ×0.74, torso ×1.61, hip −0.249, shoulder +0.122. Vision-judged as distorted (paddle hands, lost forearms, stretched shins). **Gate fails — Stage 2 (62-joint runtime ADR) indicated; do not rebuild on the warped base.** -- [ ] Skin the Quaternius mesh and verify Idle, Walk, seated and arm-down poses. The old +- [-] Skin the Quaternius mesh and verify Idle, Walk, seated and arm-down poses. The old MPFB/arm-retarget warps are not a reference; judge the Quaternius result directly. - (Direction set: ADR-0018 option 2 — 62-joint runtime. The mesh stays at source LOD; - arm-down rest pose already baked. Idle/Walk play directly on the 62-joint rig.) + (Direction set: ADR-0018 option 2 — 62-joint runtime. `NpcAvatar` now maps the Quaternius + names with old-rig fallback and derives proxy pivots from `get_bone_global_rest` + (commit `0cd12af`). First end-to-end capture loads and runs, but the vision judge reads + the arms/legs as misaligned — the `_sync_skeleton` swing axis (`Vector3.RIGHT`) is + calibrated for the old rig, not the Quaternius bone roll. Next: determine the per-bone + swing axis for UpperArm/LowerArm/UpperLeg/LowerLeg from the Quaternius rest basis.) - [ ] Retarget Idle and Walk from the 24 Quaternius clips to the contract rig; discard combat, gun and sword clips. Verify looping, foot contact and frame rate in Godot. (Direction set: no retarget needed — the clips are authored for the 62-joint rig; only