Blender to UE4: scale issue in parent-child bone relationship

Blender to UE4 - scale issue in parent child bone relationship

To demonstrate the problem, I created a simple bone chain with the following bones:

‘root’

‘parent’ (child of root, not connected)

‘child’ (child of parent, not connected, it has a copy transform constraint to location bone so it will always copy its location, rotation and scale)

‘location’


For these bones I created two animations:

‘A’ animation as it appears in blender: I rotate and move the ‘parent’ bone. ‘Child’ bone doesn’t move at all, because it copies the translations of the ‘location’ bone.

‘A’ animation as it appears in UE4: same as in blender. ‘Parent’ moves, ‘child’ remains still. No problem.

‘B’ animation as it appears in blender: I rotate, move and scale the ‘parent’ bone. ‘Child’ bone doesn’t move at all, because it copies the translations of the ‘location’ bone.

‘B’ animation as it appears in UE4: ‘Parent’ does the same as in blender. ‘Child’ rotates and scales for some strange reason, and that’s the problem.

Without seeing the files I am not sure what the problem is however. In your picture examples it looks like you are in the animation editing window. Ue4 cannot read your controls from blender (constraints, parent/child relationship) so if you are editing a bone animation in ue4 and expect it to work the same way as in blender, I can tell you it will not. Best practices are to edit your animations in the native 3rd party program you made the model in.

Hi Gezu,

Unfortunately, I have not been able to reproduce this on my end.

  • What version of blender are you using?
  • Does this occur in a clean, blank project with no additional content or is it limited to one project?
  • What steps can I take to reproduce this on my end?
  • Does the error only occur with scaling or is it with any transform you make to the animation?
  • Can you show me a video of what you are seeing on your end?

Hi!

Thank you for the quick answers! I used blender 2.76, a blank project, and as few steps as I possible could to reproduce the problem. It’s not long, so I created a video with the process. I can also send blend and fbx files if it is needed, but I think the video can tell everything.

If you could send the FBX files it would be extremely beneficial for me to reproduce this error on my end. I’ll attempt a few things to see if I can cause this error to occur.

No problem, I still have the fbx files. I didn’t save the blend file but I can remake it, if it is needed.

FBX files

Try the suggestion here:

https://answers.unrealengine./questions/350406/blender-to-ue4-amaturebone-rotation-scale-problem.html

Does this work for your error?

I changed the scene scale to .01, armature scale and object scale are 1.00, as it was before. Now everything is properly sized, however the child bone still does that weird move if it’s parent is moved, rotated and scaled.
Bone rolls are the same, but I guess it doesn’t matter, because the child bone shouldn’t move at all.
What else could I try?

I have found an easier way to reproduce (I guess) the same issue:

Now I have two bones: a child and a parent. The child bone doesn’t inherit the scale and the rotation of the parent.

If the animation for the parent bone only contains rotation and move then the child bone acts as it should in UE4. (It doesn’t rotate)
If the animation for the parent bone contains rotation, move and scale then the child bone will also be rotated to the mirrored direction. It still doesn’t inherit the scale transform from the parent, but it is rotated. My guess is that it does the counter rotation twice (or I am not sure how it is translated if it doesn’t inherit the parents rotation).
The weird thing is, that the problem is with the child’s rotation, however it only happens if I scale the parent.

One more step to make it more simple:
Even 1 position is enough with the same bones:
If I only rotate the parent, the child will be unrotated as it should. If I rotate and scale the parent, the child will rotate to the opposite direction.
Does this problem only occur at my pc? I am using the standard set of both blender and UE4. I am a bit confused. :frowning:

Hi Gezu,

I wanted to post and let you know we are still looking into this. I will post back here once I have more information.

Ok, thank you!

Hi Gezu,

Can you post the .blend file here? It may help us to determine what exactly is occurring.

Hi!

Of course!

Link.

Hi Gezu,

We are still looking into this error, I apologize for the delayed response. Unfortunately this one has been tricky to nail down exactly what is occurring. I’ll post back here once I have an update but thank you for the .blend file, it will hopefully help us find the error in question.

No problem, thank you for your efforts. Did you managed to reproduce the problem, or is this still only occurring at my end?

Hi Gezu,

Try renaming the Armature bone to “Root”. We were looking through the blend file and noticed this, the editor typically looks for a single root bone for the skeleton to function correctly.

I tried, it does the same.

Try this, see if this works for you:

link text

No. :frowning: Even with your fbx files the problem is the same. Do these files work correctly at your end? Can be the problem with my import settings? (I use the default UE4 settings.)