So I have this GLTF model that I import into a three.js scene. The model itself is created in blender where I created a character that I have rigged and I created a few different animations with separate names (IdleAction, StartAimingAction etc). I then save this as a glb-file which includes the animations I created. I can successfully load this glb into my three.js scene and display any of the animations I created.
I now tried to duplicate the character (both mesh and armature) so that I have 2 characters. I did this by selectin both mesh and the armature in Blender and shift+D to duplicate. I then save to glb and load into my threejs scene. It seems when I do this I get two instances of every animation (check the image below). For instance I have 2 animations both with the name "IdleAction", one for each character. But there seems to be no real way of knowing which animations belongs to which object. For instance I have 2 animations both with the the name "StartAimingAction" (one for each character), but how can I choose programmatically to for example play one animation for character 1 and another animation for character 2 if I can't see which animation belongs to which character?
This so far is just a test, because my aim is to have a scene with 100 of these soldier characters, which will be incredibly messy if that means 100 animations of every type. Since I have around 5 different animations that I created that would result in 500 animations.
It would be so much nicer if the animations became of a part of the actual character object instead (see arrow in image below), but those lists are always empty, instead all animations are a part of the "animations" list in the gltf root object. (BlueSoldierTemplate and BlueSoldierTemplate001 are character 1 and 2 in the image).


