Character design composed by multiple sprites

Godot Version

Any

Question

I was thinking try to make a 2D game i made with unity long time ago (for learning purpose) using Godot.

The problem is that some of the characters and the player, were made composing different sprites, and animations were sometime changing only one of the sprites.

For example the main character had:

  • Sprites for the arm
  • Sprite for the head
  • Feet
  • Weapon
  • etc.

So I composed this in unity and made the various characters with animations (tbh i don´t even remember how i did it on unity since it was long time ago and I no longer have unity installed).

For example an enemy if hit would have his face changed (only the face) for a small time and then back to normal.

Now the problem is that in most of the tutorials i have found they explain how to animate characters composed by a single sprite, and then using different sprites just for animating the movement, but still the character itself is a single “image”.

My question is if it is possible to do it in godot?
And how this should be achieved?
Using multiple sprites, or an AnimatedSprite2d node? If anyone can point me to an example of this scenario, i would be happy.

Thanks a million!

You can use either multiple animationplayer nodes, one per sprite or you can have one animationplayer node control all of them too, depends on how flexible you want your system to be

1 Like

Take a look the at Skeleton2D node. You can follow this tutorial:

1 Like

Thanks for all the replies,
I have been experimenting in the last few days with the skeleton2d, and i was able to create a character with a skeleton, and animate movement using just parts of the body.

Now the main problem is that the skeleton when i designed it was kind of ok in shape (with the various arts overlapping pretty nicely the character.

Now movement is still fine, but i’m wondering if there is some concept i didn’t understood or is that normal. This is how is looking now:

As you can see arms are totally unaligned. Now when I placed the arms, and the foot i did rotate and resized them to match more or less the position of the arm, with the pointy side pointing toward the bottom. Should I have done that? Or it was not necessary.
(the ugly character is just a sketch I tried to make :D)

I tried to unassing the skeleton, from the arm, change the arm position/rotation and assign it back, but looks like that it doesn´t work properly. This is what happens if I do that:

Like the arm start on a different position.

What i did wrong?