How do I use custom SkeletonProfiles for 3D models?

Continuing the discussion from How do I edit a custom SkeletonProfile:

Godot Version

Godot 4.6

Question

Hey, I’m new to 3D animation, and I’m struggling with the same thing as the other post’s OP, but there was no answer given there. I want to be able to share animations between two characters that have similar rigs, but some of their bones are named slightly differently (like, “LeftHand.001“ and “LeftHand.002“), and apparently a bone map would be useful for this type of situation. The few tutorials I see regarding this are about the SkeletonProfileHumanoid, which is a pre-defined humanoid rig map. And my characters do not have that many bones, so I’d prefer to create a custom, simpler SkeletonProfile, but, again, there’s no tutorials on it.

Does anyone have a clue what to do? Should I even use Godot for animating at all? My rigs just have a torso, head, right hand, left hand, right foot, and left foot. And, also, there may be other non-humanoid objects that I want to animate down the line.

Thanks for any help in advance.

(just brainstorming)

aslong as you stick to the same base, you can apply the animation to different 3D objects. What you cant do is applying the same animations to different bases (non-human).

1 Like

Have you try using the Humanoid profile and manually mapping the bones you need, then saving it and apply it to other model?

Yes, I tried using the humanoid profile as is. It seemed to map everything fine, and I did the same for the other character. But, I still get a “Couldn’t resolve track” error when trying to use the animations with the second character. I don’t know if it has something to do with the node property path, but I thought bone maps were supposed to resolve that.

From the images, looks line both armatures are different. Male and Female. When you create your custom bone mapping, are you saving it and reusing it on the other model?

Yes. I mapped the male body first, then the female’s. I did reuse the same map by saving and reloading it, but because their bones are named differently, I had to re-select the female’s to match the points so that the green points didn’t turn red. But everything else was the same.

I just renamed the bones in Blender to be identical and re-imported the models. But, the underlying issue of mapping hasn’t been solved. I don’t know why it wasn’t working, because the armatures are identical, just with different bone suffixes. There must be a viable way developers handle this.

Thank you for all the help!

I still don’t know how to use custom skeleton profiles, but the solution to the SkeletonProfileHumanoids not working for sharing animations between humanoid armatures is the same solution to my other post regarding something similar: Improperly Imported Bone Hierarchy from Blender . I was animating the bones in the scene tree instead of the bones in the skeleton’s Bone property (i.e. with the skeleton’s edit mode). So, the humanoid profiles were working.