You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Address feedback on diagnostics and authoring (#92)
* Address feedback on diagnostics and authoring
Signed-off-by: a-baran-orhan <a.baranorhan@gmail.com>
* Stabilize fixture scorecard test
Signed-off-by: a-baran-orhan <a.baranorhan@gmail.com>
* fix: keep deadlift heels planted through the hip hinge
The deadlift's Lower phase rose onto the balls of the feet at the bottom
of the hinge: with knees flexed 25° the shin tilted 25° forward, but
keeping the sole flat needs the ankle to dorsiflex that far while its ROM
caps dorsiflexion at 15°, so levelPlantedFeet clamped at the limit and
left a ~3.2cm heel lift.
Ease the Lower-phase knee flexion 25° → 14° so the shin only tilts as far
as the ankle can absorb. A hip hinge keeps soft knees and near-vertical
shins anyway, so both soles now stay flat on the floor across the whole
clip (0.00cm heel lift, no grounding warnings).
Raising the ankle dorsiflexion ROM was explored but reverted: the
superhero-landing fixture's planted foot fights its floor reaches across
the XBot and procedural proportions once the ROM widens, so a global ROM
bump can't stay green in `npm run eval` without a larger landing redesign.
---------
Signed-off-by: a-baran-orhan <a.baranorhan@gmail.com>
|**Dance / choreography**| Notating sequences, port de bras, phrases that turn & travel |Phrases, port de bras, pirouettes, and traveling combos (box-step, grapevine, chassé) work via `turn`/`travel`; partner work is future. |
21
+
|**Dance / choreography**| Notating sequences, port de bras, phrases that turn & travel |`turn` / `travel` and several experimental examples exist. Ballet terminology, technique fidelity, spotting, and floor-pattern readability still need expert review; partner work is future. |
22
22
|**Martial arts**| Stances, strikes, basic forms | Stances/strikes partly work; contact and weapons are future. |
| 0 |**Clarify the language contract.** Keep the public spec canonical, distinguish it from the LLM guide, define `ground-lock` / `reach` / `pin` / `grip`, and state that cues are display-only. | Implemented in the feedback branch with documentation-contract, playground, and renderer regression tests. |
80
+
| 1 |**Make current solver failures visible.** Add heel/toe height, sole-angle, foot-drift, and residual-collision diagnostics over whole clips. Reproduce the deadlift, demi-plié, and arms-lowering reports as fixtures. |**Implemented in the feedback branch.** Live viewer warnings and 12Hz clip diagnostics now name the grounding/ROM conflict or residual collision; strict known failures remain non-gating until their solver fixes land. |
81
+
| 2 |**Add small authoring controls.** Support a built-in start pose plus sparse joint overrides; improve floor origin, facing, and metre-scale markers. |**Implemented in the feedback branch.** Parser, LSP, share-link, loop-reset, floor-guide, travel/reset-path, accessibility, and responsive UI tests cover the new behavior. |
82
+
| 3 |**Separate shape from motion limits.** Introduce explicit, named ROM profiles and contact-aware ankle limits. Do not infer movement limits from a `male` / `female` label; body proportions, rig topology, and an individual's mobility are separate inputs. | General and expert-reviewed dance profiles produce deterministic clamp diagnostics; old documents retain today's default. |
83
+
| 4 |**Run expert dance UAT.** Mark unreviewed ballet examples experimental; record the school/convention and reviewer; then fix demi-plié, rise terminology, pirouette/spotting, and chassé mechanics. | Each promoted example has a reviewer/reference and pose/contact/orientation regression checks. |
84
+
| 5 |**Extract a solved-motion sampler.** Move the final post-grounding, post-IK, post-collision pose sampling out of the viewer so evaluation and exporters consume identical transforms. | Configurable-FPS samples round-trip through the viewer with matching root and local joint transforms. |
85
+
| 6 |**Ship glTF/GLB export.** First export one compatible skinned rig plus one baked animation clip; then add multiple clips on the same rig and minimal editable materials. | Three.js `GLTFLoader` round-trip plus a Godot smoke test; no retargeting required for the first version. |
86
+
| 7 |**Ship BVH export from the same sampler.** Specify hierarchy, axes, units, Euler order, frame time, and end sites before serializing. |`BVHLoader` round-trip plus documented Blender import/export validation. |
87
+
| 8 |**Broaden the pipeline.** Add configurable rig adapters/retargeting, then a visual authoring layer and optional natural-language front end. Explore Labanotation only as a bounded translator with an explicit unsupported-feature report. | Additional rigs pass adapter fixtures; non-code edits remain deterministic and export the same motion as text-authored documents. |
88
+
89
+
Natural-language animation is best treated as an input surface, not the competing
90
+
core. Posecode's role is the deterministic, inspectable, editable constraint and
91
+
interchange layer underneath a prompt UI, visual editor, cache, or generated clip.
92
+
The comparison should be measured on repeatability, targeted edits, contact
93
+
correctness, diagnostics, and export—not only first-draft generation speed.
94
+
68
95
## Prop / equipment library (future)
69
96
70
97
Each prop is a small scene object + an anchor type; movements then reference it
@@ -86,7 +113,16 @@ Each prop is a small scene object + an anchor type; movements then reference it
86
113
87
114
## Current limitations (honest)
88
115
89
-
- One figure only; partner work and collision are still deferred.
116
+
- One figure only; partner work and inter-person collision are still deferred.
117
+
- The character adapter currently expects a Mixamo-compatible bone set. Body
118
+
proportions can vary, but arbitrary naming/topology and distributing motion
119
+
across extra spine or shoulder bones are not supported yet.
120
+
- Range-of-motion uses one general profile. It is not individualized by body,
121
+
training background, task, or weight-bearing context.
122
+
- Self-collision is a bounded corrective pass over selected body pairs, not a
123
+
comprehensive physics system. It exposes residuals for those sampled pairs,
124
+
but does not detect every possible body-body collision.
125
+
- There is no glTF/GLB or BVH motion export yet.
90
126
- A **starter** prop set (chair / wall / bar / box / dip bars): no bench,
91
127
rings, bands, or loaded implements yet, and props sit at fixed default
AGPL-3.0-only, part of [Posecode](https://github.com/posecode-dev/posecode). A [separate commercial license](https://github.com/posecode-dev/posecode/blob/main/docs/legal/COMMERCIAL-LICENSE.md) is available for closed-source product use.
0 commit comments