Best practices for creating characters in Blender and exporting to Unreal

This is actually a “best practices” question for a character creation pipeline (not a bug report).

Our game is using some non-traditional gameplay mechanics that necessitate a solid pipeline for creating characters in Blender, both humans and fantastical creatures. The humans in particular will have a wide age range (from 3-65), hit some extreme poses like crouched/prone, and need robust/expressive hands that we’ll be driving primarily with procedural motion.

We switched to Blender recently from Maya (losing much of our rigging/animation experience), and are now struggling to figure out a consistent set of “best practices” for rigging + animating characters in Blender and exporting them to Unreal for use with ControlRig. Any suggestions for resources to look at or people to talk to about would be much appreciated.

We wrote up a Google Doc with our questions linked below:

Hey there,

I’ll try to answer each question here.

What root orientation would you suggest for Blender?

We recommend following the Unreal Mannequin content approach for several reasons. While the engine does not have a lot of assumptions about root orientation, you will get overall better results with some automation tools. There may be some sneaky bugs in the engine that have those assumptions as well, but I would raise those in the future if you stick with your approach.

And what root orientation for Unreal SKs?

Ideally, these are the same; however, there are some options on import that allow you to make adjustments. When setting up your content pipeline, having a one-on-one setup makes debugging content issues much easier.

How much impact does the root bone’s orientation have on animation/posing?

It has a direct impact, though if you follow the above recommendation, everything should flow fine regardless of what orientation you choose.

yet they’re able to share animations with the Unreal mannequin that has a much more sane orientation of Z-up / X-right

This is surprising to me. I would expect the mesh to flip, are you modifying the mesh on import?

How should bones be oriented relative to other bones (i.e. X+ towards child bone)?

  • Does this apply to all bones?
  • Should the arms + legs have the same orientation pattern?

Bones’ orientation is not strictly defined as X+ to its child bone; you can have bone orientations be different for whatever case you feel. In the case of an arm chain, Epic and the Mannequins follow a Maya approach that is X+ down the chain. This is not the same in Blender where they do a Y+. I suggest following the pattern of X+ to the child bone, but you don’t need to follow it for all cases. I would think about it as, “what is the aim forward direction of my bone?”

What about fixup/twist/scalar bones, should they be oriented differently since they have specific purposes?

Generally speaking, following the aim and up is a good approach, but sometimes on a fixup bones adjusting the axis may make the math or curves you need to apply to do the fixup easier or more visually appealing. Imagine a knee cap adjustment, you may find that the up axis may need to be more vertical or adjusted to make translating the cap down the length of the shin easier.

All of the twist and fixup bones you have make sense. If you are doing any procedural adjustments at runtime, you will want to consider moving the rig for driving them into Unreal using Control Rig. Imagine moving a hand by IK, as soon as you do that procedurally in engine you will not get any of the deformations of the wrist or elbow.

We originally looked to the Metahuman hands for inspiration (which have… a frankly ludicrous number of hand bones) but decided that 5 basic metacarpals seemed like a good next step. - One immediate question: is this the most useful reference pose for them?

Yes, this is a very typical and good setup. The metahuman is more complext to handle much more realistic deformation, we do the 5 metacarpals on fortnite.

Should any bones, like the feet or spine, try to have “flat” orientations?

Not strictly, no. In the case you highlight in terms of it being easier for people to place bones, that can be a convention you take, but I would recommend not doing that and aligning your bones to the flow that best suits your character’s structure. If the neck slightly arches, arch the orientations of the neck so that a rotation on the “up” axis make sense the internal structure of how the neck would function. Bone placement is about defining structure and preserving volume when skinning. Aligning your ball or toe bone to the floor orientation, despite the art and arch of the foot, can be helpful because the weight of the character and how it pivots is axis-aligned. That said, you could do that in the controls as well. It depends on how you move that bone in the end for deformation.

Blender seems to be ok with having the forward-axis (whichever it may be) point DOWN the bone chain on both sides. Our Character Artist made it sound like Blender does the “mirroring” with a non-destructive modifier that doesn’t affect the final export (vs needing to skin the bones as mirrored).

This is a large difference with Maya and Blender and is more about the mirror bones function in Maya vs other tools. For what it’s worth the Unreal Mannequin is setup like Maya, where the bones are reversed down the bone and there isn’t much of a detriment. One downside is that if you apply vfx to bones and you don’t make orientation agnostic vfx you will need to either apply the vfx to added sockets or handle the reverse orientation. The engine can also account for this for any animation mirror or control rig mirroring you want to do as well. From personal experience, I’ve fixed these up so that the axis alignment down the bone was the same.

We assume it’s because the bones all have different orientations now, and we’ll likely need to learn more about the Unreal IK Rig Retargeter to fix this. However, just in case we’re missing something, is there anything you’d suggest we do differently to avoid this problem in the first place?

I addressed this in the beginning, but in general, the above suggestions on aligning the bones to match the unreal skeletal will allow you to more easily retarget the animation between the mannequin and your new character. There are many schemes that you can build within the retargeting system to help handle these issues, but that is a longer journey than adjusting your skeleton. The retargeting system works best when you have a set of animations for one character that you want to play on many other characters that have similar conventions but different proportions than that original character.

Is there anything else that should be included in a character asset style guide?

Skinning is often an overlooked part of style guides. You may want to enforce a four bone influence limit or define how you want pieces for cloth to be skinned. In any event, I have found that guidelines and examples of problem areas (face, shoulders, crotch, ankles, and wrist) and what you want the skinning to look like in those areas are helpful.

Any chance you’ve got some existing character asset guides you like that you could share?

Unfortunately, we cannot share those with you if we did have them.

Let me know if you have further questions or if you want to look at any specific problems. One recommendation is to export the mannequin from Unreal as an FBX and load that into Blender; it will give you an idea of the types of orientations for the bones and how to set them up that you might want to consider.

Good luck

Dustin