Решили: кусок арта экспортируется с пивотом В ЕГО СУСТАВЕ, а не по центру спрайта; в риге визуал садится на узел вращения с нулевой локальной позицией. Три куска меча получают ОДИН общий пивот в точке хвата.

Почему: точка, вокруг которой часть вращается, принадлежит рисунку, а не сцене. Альтернатива — пивот по центру (так сделаны белые плейсхолдеры) — требует на каждый кусок подобранного оффсета узла: у меча базового рига это Sword.localPosition = (0.1856, -0.0102) при scale (0.651, 1.265), то есть три числа, которые ничего не значат по отдельности и переподбираются при каждой замене арта. С пивотом в суставе замена арта — это замена спрайта. Общий пивот у кусков меча — следствие того же: рукоять, гарда и клинок собираются в меч сами, без взаимной подгонки.

Грабли:

  • Хват рига стоит не там, где рука его держит. Rotation Point (Grip) в 0.0345 от локтя, а рука нарисована с кулаком в 0.1047 — меч садился у локтя. В BoneUnit_Storybook узел сдвинут override’ом варианта; база не тронута, и потому RigProfile (он собран по базе) для варианта врёт — гизмо и расчёт аимов считают по старому хвату. Вердикт «двигать ли хват в базе» не вынесен.
  • Pillow читает этот PSD неверно: альфа рабочих слоёв приходит нулевой, композит слоёв выходит мусором, а имена слоёв теряются вместе со сдвигом индексов (adjustment-слой пропускается, и соответствие «слой N ↔ frame N» ломается). Рабочий инструмент — psd-tools.
  • UnityEngine.SpriteImportMode не существует — тип живёт в UnityEditor; в execute_code без using это ловится только компилятором.
  • Арт друга оказался нарисован практически в масштабе рига: плечо 147.5 px против 139.6 у рига при PPU 1000, направления костей расходятся на 0.9°. Подгонять масштаб не пришлось — но это совпадение, а не гарантия, и следующий кусок арта надо мерить так же (shoulder→elbow в пикселях против BoneLength профиля), а не сажать на глаз.

Владелец правды: Assets/_Project/Prefabs/Bones/BoneUnit_Storybook.prefab, пивоты — в .meta спрайтов Art/Sprites/Bone Animations/Bone Animation Sprites - Storybook/.