Best practices - Children objects animations

Hey guys,
I’m struggling with a Maya to Unity animation issue and I need an advise from you on which is te best way to tackle the “problem”.
Basically, I have a TV cabinet model with several drawers, and other parts I’ve created an animation for (in Maya).
Simple stuff like left drawer open, left drawer closed, center drawer open, etc.
Now, since the TV cabinet itself is composed by all these parts, I’ve exported the entire group as a single .fbx file.
All the components animations starts at frame 0 and ends at 35.
The problem is that importing the model in Unity, I cannot create single components animations on that frame range, because the result would be having all the drawers open at the same time.
Sure, I could change the animations in Maya with something like:

  • Frame 0 to 35: Left Drawer Opening, all the other closed.
  • Frame 36 to 71: Left Drawer Closing, all the other closed.
  • Frame 72 to 107: Center Drawer Closing, all the other closed.
  • etc.

But in this way, I should create animations for all the possible combinations, and I guess there should be a simple way.
So, making some researches, I’ve discovered that probably the best way to achieve this result would be to create a basic drawer open and close animation, and export it (the animation only) to a separate .fbx file.
Then from Unity, apply the Animations component to all the TV Cabinet children drawers, and drag the fbx animation file to each of them.
Is that the best way do proceed?
How you would solve the problem?

I hope you could help, many thanks guys!
I trust in your expertise.

I think it would be better to create only two animations: DrawerOpen and DrawerClosed (except you’d enjoy creating each combination manually, but I doubt it lol)

You could attach a script to each of the drawers with a boolean value in it (named something like isClosed or similar) that triggers the animation for that drawer. This way the drawers are unrelated with each other, and you can therefore open and close each drawer individually.

What you also could do (what I personally would do) is create an empty child transform for the drawer mesh that defines the opened position of the drawer, and one for the closed position, then you’d just animate your drawer via script by lerping (or smoothdamping) it towards the opened/closed position (based on the above mentioned boolean).