This was the entire 'MIRPAMO retarget is mushy' mystery: the retarget math
was fine, the converted clips were flat.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
tools/tune_finishers.py detects each finisher's impact frame (max forward
extent of the sprite) and sets real-time totals + active windows; values
persist in finisher_timings.json and win over DEFAULT_FINISHER in tune.
kachujin/vesper keep hand-tuned values.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
MeshGod/TRELLIS Mixamo re-rigs pose half a metre underground and compressed
(bone-space origin at hips, 0.01/100 scale sandwich). Instead of fighting
transform conventions, the renderer probes the first posed frame, measures
the actual sprite in pixels, and servo-corrects ortho scale + camera z:
unclip -> converge height -> pin feet to the ground row. Also: normalize
scales all root objects, deformed-height helper.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
- Select scene (new main scene): roster cards from characters/* with
portraits, dual cursors (P1 A/D+J, P2 arrows+O), picks via GameState
- finisher flow: KO puts loser in DIZZY with a 5s flashing FINISH! window;
winner lands QCF+K in range -> finisher move (Brutal Assassination /
Hell Slammer B) with darkened stage, victim plays synced death anim;
window expiry or any stray hit = normal collapse
- new moves rendered for both fighters in all wardrobe states:
dizzy (Stunned), finisher, death (Standing Death Backward)
- CHAR_TUNE per-character move overrides in tune_fighters.py
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
- engine: wardrobe states per character (manifest wardrobe.states),
frames@<state> variant frame-sets per move with base fallback,
tears:true moves advance state, hp threshold forces final state
- pipeline: --torn punches jagged alpha holes into clothing textures
(alpha-clip materials) and renders @torn variants; pack maps them
- both fighters: full torn frame-sets for all 12 moves
- special gets designed forward lunge (clip travel was backward)
- verified: demo QCF+P connects, knockdown shows torn frames
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>