@potato_noob, I think this is what you were going for in terms of bringing in meshes from your asset container and assigning to a duplicate skeleton. I simplified it quite a bit though, so please ignore anything that doesn’t make sense.
The reason the head still doesn’t move with the head bone is because the glb for the head does not have the full skeleton. There is only the neck, head, and head end bones so they are missing the rest of the skeleton which does have an impact on the animation when we target a new skeleton.
There were also some extra things to pay attention to when creating the new hierarchy. Because Babylon is left-handed and glTF is right-handed, there is a -1 scale on Z in the __root__
transform of any imported glTF. To get your meshes to align with the intended animation and placement, you need to add a -1 scale to the abstract mesh rootTransform
as well as a rotation of PI so it faces the correct direction. This will make both meshes act the same way and not mirror position of one another.
I believe the last step for you would be to make sure that the head mesh is skinned to the full skeleton and use that glTF to import into your scene and it should work. Let me know if you have more questions.