Quaternion animations look VERY different in the editor and in-game

Reproduction Steps

Open a new place file, go to the avatar tab, open the rig builder, and create an R15 mesh rig.
Download the following CurveAnimation, import it into your new place, and place it within the dummy’s AnimSaves.
Open the animation editor, select …>load, and select the animation provided.
Try playing the animation. It should look like a character getting up from the ground.


Select …>publish to Roblox and publish the asset.
Insert an Animation object into your workspace and give it the assetId of the animation you just uploaded.
Press F8 on your keyboard and run the following command to play the animation on the exact same dummy:

workspace.Dummy.Humanoid:LoadAnimation(workspace.Animation)

CurveAnimation.rbxm (4.5 KB)

Expected Behavior

The animation should look the exact same when played in-game as it did in the animation editor.

Actual Behavior

The character becomes stiff, default poses, and only moves their root and hands, and no other bodyparts.

Edit: I’ve figured out what’s happening. No rotations are playing. Parts I moved like the lower torso and the hards are playing just fine but anything that was rotated is ignored. This seems to be because I had my Rotation Type set to Quaternion.

Workaround

Issue Area: Engine
Issue Type: Display
Impact: Very High
Frequency: Often

6 Likes

Just curious, does this also happen if you load the animation on an animator inside of the humanoid? If you don’t have an animator inside the humanoid, you can insert it and test it out that way in case this issue also applies to the animator as well as the humanoid.

It does. That’s how I’m doing it in my actual game. I just loaded it this way for brevity in the code snippet.

Ah. Was just curious since you wrote

workspace.Dummy.Humanoid:LoadAnimation(workspace.Animation)

Instead of

workspace.Dummy.Humanoid.Animator:LoadAnimation(workspace.Animation)

This is definitely something Roblox should investigate if this problem is occurring on multiple animations

This also only happens with curve animations. I have an animation I started making as a regular pose animation and then converted to a curve animation halfway through and the curve parts of the animation just don’t play while the pose parts do.

1 Like

Update: It seems to be a combination of using Curves and having the default rotation type set to Quaternions

Roughly recreating the animation with Euler Angles is a workaround. This is not a solution. What’s the point of adding that feature if it just breaks the entire animation?

1 Like

Apologies for this, this is a known issue with Quaternion curves which we should have a fix for soon. Another workaround is to change all the quaternion keys to not use auto-tangents.

2 Likes

This issue should now be fixed, let me know if you’re still encountering issues

3 Likes