Lego Animation: from Blender to Unreal Engine

Michal Franczak 2017-12-15 12:37 tutorial  > Blender  > modeling

A few tips that will help you create your animation in Unreal Engine.

Have you ever dreamt about making LEGO animation? You probably seen many stop-motion LEGO shorts, made with traditional camera and some stop motion software (like for example Dragonframe). But as we are on CG site, we could use our daily tools for that and create some animated short using PC. Of course, animations made with offline path-tracing renderers (like V-Ray, Corona, Octane) are very time-consuming and almost impossible to master without great processing power that comes with render farms (and a lot of money!). Luckily for us, there are game engines that provide realtime rendering and they are better with each version.

 

 

In this tutorial I want to show you how to export rigged animations from Blender to Unreal. As an example I will use simple LEGO figure in cardboard room that I created earlier.

I don’t want to go through all the process of creating the scene below. It wasn’t that complicated after all. I created LEGO figure using LEGO Digital Designer software (free to download) and then exported my model to LeoCAD and re-exported as OBJ file to Blender. I heard that you can also use nice web application - MecaBricks for these steps.

 

01_5

I had to retopologize imported model a bit and unwrap it, because I wanted to texture it in Substance Painter. I also rigged it in Blender.

 

02_5

Rest of static meshes were made in Blender also, then I unwrapped them and imported to Unreal.

 

03_5

Unreal: I decided to go "cardboard" style. It is not finished animation yet, the most of objects are shaded with standard Cardboard Material from Substance Source. I only added Texture Coordinate Node and multiplier to control tiling of the material inside Unreal Engine. But this tip is not about texturing, but animation, so I will not explore this topic further. If you want to know some rules when texturing with Substance Painter for Unreal, read "Get maximum details from your textures" tutorial.

Exporting rigged object to Unreal

 

OpenGl01.gif

First, select your animation range, animate your object by rotating / moving bones and set keyframes in Pose Mode. Make sure that your object is properly unwrapped, has good smoothing and you assigned materials to it and named them properly.

 

04_5

Name your animation and push it to stack.

If you used auto keying, disable it, because you don’t want to accidentally mess with your object.

Make sure that your model and your rig have 0,0,0 as location and rotation and they are in scale of 1. Do it in Object Mode. Go to the first frame of your animation – this pose will be used by Unreal when importing your mesh.

 

05_2

Now you can begin your export – select your object (in our case there are many objects that are connected with rig) and all your rig. It’s very important that you don’t miss any element, or you will have „Merge failed!” error in Unreal. Export to FBX.

 

fbx_export

  • Choose „Selected only”, change axes to Z up and -X forward (although Unreal does a quite a good job with orientation recognition, I don’t skip this step).
  • If your mesh is made of quads / triangles you should select „Tangent space” and „Edge” in Geometry tab. If you have n-gons, you will get error on import, so you do not always need to select this option.
  • In „animation” tab deselect „All actions” and „Key all bones” and change „Simplify” to „0”, so you will get your animation 1:1 in Unreal. Save the file as „LegoMan”

 

Now, with the mesh and rig still selected, export it again, but deselect „Mesh” (SHIFT-click on "Mesh" button) in Main tab from FBX Export Panel in Blender. Name the file „LegoMan animation”.

The reason that we want to export animations separately is that Unreal sometimes messes with animation scale when it imports mesh, skeleton and animation in one run. So it is better to keep it separated. It is also more convenient on later stages, when you will able to import only new animations, not the mesh itself.

 

Exporting camera

 

06_camera

If you animated your camera in Blender (which I do, because Blender has great noise modifiers that simulate handheld camera) you need to export it separately. Make animation on your camera, assure that there are at least two keyframes in the export range and push animation to stack. If you do not push it, Unreal will not recognize animation of your camera.

 

Now, let’s go to Unreal

 

07A_unreal

Import your mesh first, you do not need to make some special changes here. I would recommend to select „preserve local transformations”. You also want to disable „Import animations” checkbox (I folded entire Animation dialog, because we do not import animations here). Drag your object to viewport, create some lights.

 

08_unreal_animation

Import your animation file. It should automatically have right skeleton selected in import window. Sometimes it happened that I needed to scale my animations by 100 to work properly. If you use metric units and scale 0.01 you probably will need to input „100” in scale box. If you used normal, generic Blender scale, you can just press „Import”.

 

09_add_sequence

Create new Level sequence

 

10_add_camera

Create new Cut track and new camera with a single button.

 

11_import_camera

Right click on camera and select „Import”.

 

12_camera_dialog

Select your FBX file with exported camera and import it, do not force X forward axis. If you check „Create new camera”, Unreal will make another cam in sequence with camera animation that you made in Blender. If you deselect this option, it will import camera animation to existing camera. The decision is up to you. In this case I just imported animation to existing camera.

 

13_lego_import_unreal

Select your Lego figure mesh and import it to animation.

 

14_lego_animation_unreal_add

Under „animation” option, select your animation. Now you have a sequence with camera and actor movement. The first step made, now you can go further from here :)

If you like this article and would like to see more details about creating LEGO animation, say it in comments.

Have fun!

Author: Michal Franczak Editor: Michał Franczak
Tags: blender unreal
You may also like...
Blender Demo Reel 2013

Blender Demo Reel 2013

New, amazing Demo Reel of animations made with Blender. Enjoy!
×

LEAVE A COMMENT

You need to be logged in to leave a comment. Don't have account? Register now.
  • ul. Przedzalniana 8, 15-688 Bialystok, POLAND