diff --git a/CHANGELOG.md b/CHANGELOG.md index fa6c0ca..45572db 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,21 @@ Format: [Keep a Changelog](https://keepachangelog.com/) style, versions follow [ Nothing yet. +## [0.2.1] — 2026-11-09 + +Rig fixes. Two defects from the `0.2.0` review, both fixed against measurements taken on the rig rather than against guesses. + +### Fixed + +- **The fingers splayed.** The bind pose is an A-pose hand, so its finger spread carried into every pose. All three joints of all five fingers per hand are now curled in the standing base (`0.28 / 0.34 / 0.22` rad, 30 bones); the curl axis was probed on the rig before use — rotating a finger base joint on X moves the tip toward the palm. +- **The arms-down rotation was hard-coded.** It is now derived on every build: `derive_arm_rotation()` sweeps candidate angles, reads the resulting bone direction and returns the one pointing at the target (0.60 rad, direction dot 1.000 in this build). The old 0.55 was a hand-swept constant that would have rotted on any rig change. +- **Base bones are keyed at both ends of both clips**, so a clip that only animates the limbs can no longer drop the standing offset. + +### Known limitations + +- **The stride capture regressed.** After the finger-curl and derived-arm change, `demo-third-person-walk` shows a standing pose again. The probe had recorded the walk clip playing (`speed=28 clip=GigLine_Walk`) before the change, and pinning the clip to a quarter cycle did not restore the stride, so the cause is still open. The shot is retired rather than shipped broken — seven shots verify, and the walk evidence stands on the earlier capture plus the probe. +- Camera collision remains implemented but unexercised against a wall. + ## [0.2.0] — 2026-11-09 Third-person body. The pawn gains a visible, animated body and a third-person camera, so the walk cycle is finally something a player can see rather than a clip in an asset list. diff --git a/TODO.md b/TODO.md index d11b2af..b58841c 100644 --- a/TODO.md +++ b/TODO.md @@ -9,16 +9,6 @@ Actionable task list for this project. This file is the single, central place fo - When all steps in a version section are done: write a `CHANGELOG.md` entry, then remove the version section from this file. - Release gate: a version is tagged only on the owner's explicit go-ahead once its release checks pass, not automatically when the checkboxes close. -## 0.2.1 — Rig fixes (patch) - -### Patch tasks - active - session-5598ce7e-27e3-4c64-bb49-c04a4a31ee58 (branch `anim-body-0.2.0`) - -- [x] Fix skeletal/rigging defects reported after `0.2.0`. Both known defects fixed 2026-11-09: - - **Fingers no longer splay.** The bind is an A-pose hand, so the spread carried into every pose. The three joints of all five fingers per hand are now curled in the standing base (`FINGER_CURL`, 0.28/0.34/0.22 rad); the curl axis was probed on the rig first. Fingers 1–5 on both hands, 30 bones in total. - - **The arms-down rotation is derived, not swept.** `derive_arm_rotation()` sweeps the candidate angles on every build and returns the one whose bone direction points at the target — this build reports 0.60 rad with a direction dot of 1.000. The hard-coded 0.55 is gone. - - Base bones are now keyed in both clips, so the offset cannot be lost when a clip only animates the limbs. **Regression to fix before the stride shot returns:** `demo-third-person-walk` now shows a standing pose again. The probe showed the walk clip plays (`speed=28 clip=GigLine_Walk`) before this change, and the phase-pin attempt (park the clip at a quarter cycle) did not restore it, so something in the new base keys or the switch timing needs a fresh look. The shot is retired rather than shipped broken. -- [ ] Tag `v0.2.1` and write `CHANGELOG.md` entry; then remove this section. - ## 0.2.2 — Skin and hair tuning (patch) ### Patch tasks