Home Website Youtube GitHub

Chain Spring / Gravity / Glitch problem

Dear masters of modern technology!

Setup:

  • mGear 5.3.5
  • Maya 2026
  • Unreal Engine 5.8 (tested several versions)
  • FBX Export (tested all versions)
  • Unreal Import FBX animation (tested all options)

Problem: Elephant trunk rotation glitches in Unreal.

I’ve tested both Spring_Chain_01 and Spring_Chain_Gravity.

Everything works perfectly in Maya. There are no twisting issues during animation.
FBX export anim file itself seems perfectly fine.
The animation curves don’t have any gimbal lock issues either.

In previous smaller projects and with other characters, I managed to work around this by disabling matrix rotation on the problematic joint and slightly adjusting the animation. It wasn’t ideal, but it was manageable.

However, my current character has an elephant trunk that frequently suffers from rotation glitches in Unreal.

I’m posting here hoping someone has experienced the same issue and found a brilliant solution! :slight_smile:

Thanks in advance!

Here’s another quick test that clearly shows the trunk’s rotation issue, even though the exact same joints have no twisting problems in Maya or in the FBX file.

I do have those rotation issues all the time. It is due to the Unreal linear interpolation. Have you tried setting the interpolation to step instead of linear?


P.S Are you forcing the scale to uniform?

2 Likes

Yes, I’ve tried linear interpolation.

I’m using uniform scaling, and there are currently no scale changes. All scale values remain at 1, 1, 1 throughout the animation.

Thanks for the help Milio!

1 Like
  • Any shear values in the animation? (I guess there wouldn’t be with 1,1,1 scaling, but worth checking.
  • Is it possible the joint orientation or rotation order is being modified in export or import? I wonder if that could cause gimbal issues where there were none.
  • Milio was suggesting to try Step, not Linear. Did you also try Step?
1 Like

I’ve checked the following:

  • All trunk joints use the default XYZ rotation order in both Maya and FBX (I’ve also tested other rotation orders).
  • I’ve tried both Linear and Step interpolation, just to be sure. However, the issue occurs on the actual frame, not between frames, so interpolation isn’t the problem.
  • Shear values remain stable across all frames, with no changes (I’ve also tried Break Shear).
  • UE import uses Uniform Scale.
  • I’ve also tried changing the joint orientation in Unreal.
    image

Here’s something interesting from my latest test:

I extended the animation, and at one point, I reset all poses and disabled Spring Chain Intensity. Then I enabled it again to let the simulation restart from scratch, and the problem disappeared!

The behavior is so unpredictable that I have absolutely no control over when the rotations will suddenly go crazy.

What’s even more interesting is that I’ve experienced this exact same issue with other characters using Meta Leg, where some twist joints behaved in exactly the same way.

This is strong evidence that the Spring Solver itself isn’t the cause!
ani_trunk_v01_GIF

Thank you @chrislesage

1 Like

For now, I’ve managed to fix the rotation glitch issue. We’ll see how it holds up during production.

First, I switched back to the legacy FBX importer using:
Interchange.FeatureFlags.Import.FBX 0

Then I imported the animation with Preserve Local Transform enabled.

Back to work! :slight_smile:

1 Like