Best way to do animate soldier?

Hey, I’m doing my first Unity game and I have one problem, which does not allow me to continue doing my game. I have vector top-down soldiers and currently for every part (life bar, head, body, gun and selection circle) I have sprite sheets for animations (like attacking by sword) because he can at the same time eg. attacking and losing life but not walking or be selected. For every part I have separate GameObjects and Animators, like this:

soldier

–lifeBar

–head

–body

–gun

–selection

This make big number of GameObjects which isn’t good for efficient I think. Is there another way to do it? Eg. can I animate few sprites in one animator as I wrote it has to look? And if I can animate sprite position instead making big sprite sheets for every animations?

It would be GREAT if I could have one gameobject per soldier and every soldier have one animator which animate few sprites (layers?) positions.

Thank you in advance, this small problem does not allow me to continue doing my game, I very much hope that someone will know how to solve this problem.

Hello

In my opinion is better to have everything like you have, it makes much easier to detect bugs and make changes to the animations

But if you still want to do it in one single piece, I recommend you to make bone animations, or modular animations

That way you can animate your character much more fast, some assets and programs to achieve this are

  • Anima2D (Asset store)
  • Puppet2D (Asset store)
  • Spriter (Program)
  • Spine (Program)

For the lifebar there are some tutorials on youtube on how to make lifebars etc,

Here are some examples

Hope it helps

Cheers