Play animations to specific parts of imported Object? (FBX)


I am developing a kind of battle game where the player is a vehicle that can shoot and transform.

The vehicle model consists of 7 Elements (6 meshes, 1 armature) and hierarched like this using parenting in Blender:

  • Armature
  • Body
  • Head
    – CannonLeft
    – CannonRight
    – WingLeft
    – WingRight

The armature deforms only the body, the rest Objects are transform-based animations (LocRot).

I exported the vehicle with its corresponding elements and animations in the FBX 7.4 binary format with Blender.

The Importing procedure from Blender is for this purpose really horrible, since the vehicle is no humanoid character and so not to do this by using mixamo (mixamo is an extremely time saver when it comes to human character animation, you can upload your humanoid character and apply provided animations, being fully compatible with Unity).
I nearly spend 5 hours for rotation fixes, but I managed to get those look nearly right.

The animations are (7):

Idle, Walk, CannonRecoil, TransformBody, TransformHead, TransformWingLeft, TransformWingRight

When I looked up the animations tab under source take, there were all my animations for each element, giving a total take amount of 49 (7 animations * 7 elements). This is not efficient, since the vehicle-objects need only their specific animations; However, I deleted the unnecessary source takes.
But when I preview the animations, the whole vehicle itself plays the animation and not the specific part of it.

How can I select only certain part of the object to play the animation?

Thanks in advance.



Separate your model in avatar masks then apply the desire animation in the correct animation layer.