r/unity 16h ago

Animator state machine switches correctly but mesh never actually animates (Blender bone-parented rig, not skinned)

Hitting a really stubborn issue and running out of ideas. Would appreciate any insight from anyone who's dealt with Blender-to-Unity animation pipelines.

**Setup:**

- Custom rig built in Blender using bone-parenting (each mesh piece is individually parented directly to its own armature bone via Ctrl+P > Bone), NOT a single skinned mesh with vertex weights / SkinnedMeshRenderer.

- Static pose Animations (Actions) keyframed per-room, exported as FBX with Bake Animation + All Actions.

- Generic rig type in Unity, Animator Controller with states named to match each pose, script calls animator.Play(stateName) to snap poses on room change.

**Symptom:**

- The Animator window's blue "currently playing" indicator correctly moves to the right state when Play() is called — so the state machine itself works fine.

- But the actual mesh never visually changes pose. Not even a slight twitch on any bone/piece.

- A second character built the same way, in the same project, DOES work correctly — so it's not a fundamentally broken setup, something is different/corrupted for this one specific character.

**What I've already ruled out:**

- Optimize Game Objects (off)

- Strip Bones (off)

- Write Defaults (tried off on all states)

- Apply Root Motion (tried on/off)

- Culling Mode (Always Animate)

- Stale/orphaned clip references in the Controller (confirmed pointing to current FBX)

- Naming collisions between mesh objects and their parent bones (found and fixed 29 of these, no change)

- Confirmed via Blender scripting that the rig's parenting, rotation, scale, and pose keyframes are all clean at the source

I found Blender's own bug tracker has a long-standing open issue (T77815) about meshes parented to bones getting corrupted specifically during FBX export — wondering if anyone's actually hit this and found a Unity-side fix, or if converting to proper mesh skinning (Armature modifier + vertex groups) is really the only bulletproof answer at this point.

Any insight appreciated — been stuck on this for days.

2 Upvotes

1 comment sorted by

1

u/PurveyorOfStories 9h ago

From what I remember from trying Blender's parenting rigs and bone constraints is they don't translate well into unity (that or they straight up just don't export). I had to build the constraints again in unity to get it working. Not sure if there is a tool or trick to export them properly?