Skip to main content
null 💻 notes

How to Import a Custom FBX Mesh and Skeleton from Blender into Unreal Engine

For Waystation Echo, I am using a custom armature based off of the UE4 mannequin. Since I want to practice making FPS arm animations, I decided to abandon any delivered stuff designed for the mannequin and make my own armature. Since this is a unique skeleton, I wanted to go over how I exported it from Blender and then successfully imported it into Unreal.

In Blender #

I'm assuming you already have a mesh that you added bones to.

Export your mesh and your bones together as selected objects. Don't select anything else:

In the Export FBX panel in your sidebar, set your Forward vector to -Y Forward, which auto changes your Up vector to Z up:

Note that I selected only Armature in the above screenshot. This is because I am intending to export the **animation **I made for my arms--an idle break animation.

If you are exporting your fbx for the first time, then this is likely your base pose. In that case, you'll want to ensure you select the Mesh tab is also selected:

In the Geometries tab, I always set Smoothing to edge:

In the Armatures tab, I ensure that Add Leaf Bones is unchecked. I don't want extra bones in my bones:

In the Animation tab, what you select will be dependent on what state you are exporting.

If this is a base pose, not only do you want to ensure that you selected Mesh in addition to Armature from the Main tab, you also want to deselect Baked Animation, which will uncheck the rest of this tab's elements:

If this is an animation for your base pose, ensure that your Baked Animation is selected--otherwise you'll just be exporting a static pose:

At this point I'll assume you've exported your FBX at least twice: once for the base pose with the Mesh and no animation, and once more with no mesh but baked animation.

Let's now look at bringing it in to Unreal.

In Unreal Engine #

I saved my base pose as WeFPS_Arms, and my fbx containing the animation WeFPS_ArmsAnim_IdleBreak.

The first thing to do is bring in your base pose. Go to your content browser and click Import, then select your FBX containing the base pose that has no baked animation. In Unreal's FBX Import Options, ensure that skeleton is None (which will cause Unreal Engine to generate a new skeleton based on the one in our FBX) and that Import Animations is unchecked. Overall, your import should look something like this:

Once Unreal Engine is done importing the FBX, you should see three new things in your content browser: The Skeletal Mesh, The Physics Asset, and the Skeleton:

If you have animations, Import the FBX in the same way. Notice that Unreal's FBX Import Options looks different: first, the Skeleton is auto assigned to the one it just generated before, and second, there's no option to not import the animation--since that wouldn't make any sense:

Once you're done importing the animations, your content browser will show you two new things: your animation + "root root", and your animation + "root rootAction." The former is your animation asset's first frame; the ladder is your animation asset's animation:

We can test this by modifying our current animation blueprint or just creating a new one. For the purposes of this article, I just created a new one, then modified the blueprint I use to govern my player to use the new anim blueprint--and to use the Skeletal Mesh that we created when importing our FBX:

For this example, I went to that custom anim blueprint and just had it loop the idle loop animation:

The last thing you need to remember to do is SAVE EVERYTHING, then Compile your anim blueprint. You need to save the skeletal mesh, the skeleton, the animations, and the anim blueprint. Once they're all saved, hit Compile. Once your player's BP is in the game, give it a go. Here's the first round of my tests:

The animation loops look great. I have some placement tweaking to do (see that giant shoulder up there?), but overall, I would say it's getting closer and closer to the final product.

I hope this article was helpful to you! Good luck and stay productive. ♥