BUG: "Compatible skeletons" doesn't get Animation Curves

The problem is that setting one skeletal mesh to be compatible with another doesn’t get the animation curves that have been made on the UE4 Mannequin skeleton animations. Curves like these:

I have two Skeletal Meshes: The UE4 Mannequin and a custom character with a similar hierarchy, but some extra bones for face, jiggle, etc.

On some animations, like running, sprinting, and rotating in place I have animation curves to either tell the gait or distance to turn. These get all fed into the animation blueprint to do some kind of action.

When printing what curves are available on the UE4 Mannequin skeleton I get all the curves printed like so:
UnrealEditor_Ty3VuvJXJN


Same thing appears when playing in editor with the UE4 Mannequin
When changing to my custom character nothing gets printed
Under my custom character ive set the compatible skeleton as follows:
UnrealEditor_mSKTwZwZvR

Unfortunately this doesnt work in 5.0 or 5.1

2 Likes

did you find a solution to this?

1 Like

When asked on UDN I was told it would be fixed in 5.2

Instead of using compatible skeleton i just imported the skeletal mesh directly to the base skeleton, which doesnt give the reuslts I want, but is fine for now.

Hopefully it will be fixed in 5.2. I will solve it the same way as you until then, thanks!

1 Like

In the original screenshot the character is in a t pose.

Why would you expect to see curves if there is no animation running which has curve values?

The systems should be 100 compatible and work. You just need to toggle the animation to see if curve values exist or not.

Anim Debug will also help to sort it out btw, rather than printing stuff, which being dynamic may in fact not be present in the given animation.

In short, if you are running an animation with curve values - then the curve values should be present. Regardless of how you did it.

Normally instead of compatible skeletons, you just retarget your character to work off the original animations at runtime for some things, or copy and create entierly new animations for some others when IK is needed.

I don’t understand your reply.
The pose of which the character is in doesn’t matter in this case.
There is animation running, which is why I expect curve values to be active

“Compatible skeleton” was presented as a solution with the same effect as importing a skeletal mesh onto the same base skeleton. The difference was that you could get a separate skeleton asset for it and reduce clutter on the base skeleton.

then the curve values should be present.

As my previous reply states, an epic representative on UDN, said they are aware that it doesn’t copy curves over as it should, but will in 5.2

Normally instead of compatible skeletons, you just retarget your character …

This comment is redundant to my original post.

1 Like

There isn’t, or it would not be in a t/a pose.

Curves are part of the Animation running, not the skeleton.

I’m not sure what or even why you are trying to argue as none of what you are saying has anything to do with my post, and most of it isn’t even right.

Curves are stored on each individual skeleton but activated on animations. The node “Get All Curve Names” returns every curve that is stored on that skeleton.

I suggest you either test this stuff yourself before commenting on bug reports like this, where someone from Epic already said it was being worked on.

1 Like

I never said it’s not a bug, but perhaps you lack basic reading skills and comprehention since you also seem to lack the basic knowledge to test things properly.

Sure, get all curve names has never worked right.
Curves are defined and stored on a per animation basis. They are also only active if the animation has them set as a meta curve or expressly gives them a value.

Further, compatible skeletons are passing curves along just fine for the animations I’m working with, it’s just the specific node that won’t necessarily retrieve the names.

Now, since you appear to have issues with english I’ll write it again in bold short sentences.

no they are not. They are stored on individual animations.

No it does not. It retreives the curves avaliable in the AnimInstance.
If you bother picking through the c++ for it, you will clearly see they are compiled out of the individual animations.

I suggest you test things properly and read things through before posting further blunders. But hey, on the plus side maybe somene reading can learn something.

Du får ret, jeg får fred.