Version: 2019.2
Preparing Humanoid Assets for export
Limitations on importing Models into Unity

Using FBX files in other applications

Note: This section provides information about proprietary file formats that use FBX conversion. However, there are two file formats that do not use FBX as an intermediary: SketchUp and SpeedTree. For more information about importing these file formats, see the SketchUp Settings and SpeedTree topics.

Unity supports FBX files which you can export from many 3D modeling applications. Use these guidelines to help ensure the best results:

  1. Select what you want to export inside your 3D modeling application.
  2. Prepare what you need to include inside your 3D modeling application.
  3. Check the FBX settings before exporting.
  4. Verify and import the FBX file into Unity.

In addition to these generation guidelines about exporting from 3d modeling applications, the following sections contain more specific information for these 3d modeling applications:

Selecting what to export

Think about what you want to export: some sceneA Scene contains the environments and menus of your game. Think of each unique Scene file as a unique level. In each Scene, you place your environments, obstacles, and decorations, essentially designing and building your game in pieces. More info
See in Glossary
objects are essential but others may be unnecessary. Applications often let you export selected objects or a whole scene. You can optimize the data in Unity by keeping only the essential objects.

If you choose to export only specific objects in your scene, you can:

  • Export only the selected objects if your application supports it.
  • Remove unwanted data from your scene and export the whole scene.
  • Make a preset or a custom scene exporter to automate or simplify the selection export process.

Preparing what you need to include

Prepare your Assets for export, using the following considerations:

Object: Preparations:
Meshes All NURBS, NURMS, splines, patches, and subdiv surfaces must be converted to polygons (triangulation or quadrangulation)
AnimationA collection of images that create a moving image when played sequentially. In Unity, an animation is the result of adding two different animation keys, at two different times, for the same animatable property. More info
See in Glossary
Select the correct rig. Check the frame rate. Check the animation length.
Blend Shapes or Morphing Make sure your Blend Shapes or Morph targets are assigned. Set up the export MeshThe main graphics primitive of Unity. Meshes make up a large part of your 3D worlds. Unity supports triangulated or Quadrangulated polygon meshes. Nurbs, Nurms, Subdiv surfaces must be converted to polygons. More info
See in Glossary
appropriately.
Bake deformers Make sure that you bake deformers onto your Model before exporting to FBX. For example, if you are exporting a complex rig from Maya, you can bake the deformation onto skin weights before you export the Model to FBX.
TexturesAn image used when rendering a GameObject, Sprite, or UI element. Textures are often applied to the surface of a mesh to give it visual detail. More info
See in Glossary
Make sure your textures are either sourced from your Unity Project or copy them into a folder called textures inside your Unity Project.

Note: We don’t recommend embedding textures in the FBX file using the Embed Media option. You must extract textures before using them, so embedding them just bloats your project unnecessarily and slows the import process.
Smoothing Verify any smoothing groups and smooth Mesh settings.

Important: Importing blend shape normals requires having smoothing groups in the FBX file.

Setting the FBX export options

Check your FBX export settings:

  • Check each setting in the export dialogue of your 3D modeling application so that you know what to match up the FBX import settings in Unity.
  • Select whether to export Animation, Deformations, Skins, Morphs according to your needs.
  • Nodes, markers and their transforms can be exported to Unity.
  • Select any Cameras, Lights, and Visibility settings you want to import into Unity.
  • Use the Latest Version of FBX where possible. Autodesk regularly updates their FBX installer.
  • Make sure you use the same FBX version to import files into Unity as you used to export them from your 3D modeling application. Using different versions of the software can provide unexpected results.

Verifying and importing into Unity

Before importing your FBX file into Unity, verify the size of your exported file. Perform a sanity check on the file size (for example, to see if it is larger than 10KB).

Re-import your FBX file back into the 3D modeling software you used to generate it (for example, into a new scene). Check to make sure it is what you expected.

To import your file into Unity, follow the instructions for Importing, keeping in mind how you set the export options in your 3D modeling software.

Exporting from Autodesk® Maya®

You can use the FBX Export options to pick what to export in your FBX file.

Exporting blend shapes (morphing)

When exporting blend shapes (morphing) from Maya, follow these guidelines:

  • Apply the blend shape to the export mesh with its targets in order.
  • If you require Maya animation keyframesA frame that marks the start or end point of a transition in an animation. Frames in between the keyframes are called inbetweens.
    See in Glossary
    , you can animate keyframes on the blend shape node.
  • Enable the Animation > Deformed Models > Blend Shapes FBX Export option in Maya before exporting the mesh.
  • If you also want to export skin deformation, enable the Animation > Deformed Models > Skins FBX Export option in Maya before exporting the mesh.

When you’ve imported the file into Unity, select it in the ProjectIn Unity, you use a Project to design and develop a game. A Project stores all of the files that are related to a game, such as the Asset and Scene files. More info
See in Glossary
view and enable Bake Animations in the Animations tab of the Model Importer.

Exporting complex deformation

You can create very complex character rigs in Maya. For performance reasons, Unity supports linear blend skinningThe process of binding bone joints to the vertices of a character’s mesh or ‘skin’. Performed with an external tool, such as Blender or Autodesk Maya. More info
See in Glossary
with a default of four influences per vertex maximum. If your character uses more than four, follow these instructions when you import the Model into Unity:

  1. From the Rig tab of the Import Settings window, select Custom from the Skin Weights drop-down menu. Two new properties appear under the Skin Weights drop-down menu.
  2. Set the maximum number of bones you want to use as influence in the Max Bones/Vertex property.
  3. You can also adjust the Min Bone Weight property as an optimization. This is the threshold that Unity uses to determine whether it should include a bone’s position when it calculates influence. If a bone barely contributes to the influence, you can save some resources by not including it in the calculations.

If you choose to stick with the default maximum and you have a Mesh with more than four influences, the deformations may appear distorted. Or if you are using deformation other than clusters, the deformations may be completely absent.

For more information, see Bake deformers on a character in the Autodesk documentation.

Exporting from Cinema 4D

Animated characters using IK

If you are using IK to animate your characters in Cinema 4D, you have to bake the IK before exporting using the Plugins > Mocca > Cappucino menu in Cinema 4D.

If you don’t bake your IK prior to importing into Unity, you only get animated locators and no animated bones.

Maximizing import speed

You can speed up file import into Unity by turning off the Embed Textures preference in Cinema 4D before you export. Check the Cinema 4D documentation for instructions.

Exporting from Autodesk® 3ds Max®

You can use the FBX Export options to pick what to export in your FBX file.

When exporting from 3ds Max, there are some extra considerations when dealing with the following:

Exporting quads

3ds Max’s editable Mesh always exports triangles. The Editable Poly retains quadsA primitive object that resembles a plane but its edges are only one unit long, it uses only 4 vertices, and the surface is oriented in the XY plane of the local coordinate space. More info
See in Glossary
and N-gons on import. So if you want to import quads into Unity, you have to use an Editable Poly in 3ds Max.

Bone-based Animations

Follow these guidelines when you want to export bone-based animations in 3ds Max:

  • After setting up the bone structure and the animations (using FK or IK), select all bones and/or IK solvers.
  • Select Motion > Motion Paths > Collapse. Unity makes a key filter, so the amount of keys you export is irrelevant.
  • Click the OK button on the FBX Exporter window.
  • Copy the FBX file into the Assets folder.
  • Open Unity and reassign the Texture to the Material in the root bone.

When exporting a bone hierarchy with Mesh and animations from 3ds Max to Unity, the exported GameObjectThe fundamental object in Unity scenes, which can represent characters, props, scenery, cameras, waypoints, and more. A GameObject’s functionality is defined by the Components attached to it. More info
See in Glossary
hierarchy corresponds to the hierarchy you can see in the 3ds Max Schematic View. However, Unity uses a GameObject as the new root, containing the animations, and places the Mesh and material information in the root bone.

If you prefer to keep animation and Mesh information in the same Unity GameObject, parent the Mesh node to a bone in the bone hierarchy in 3ds Max before exporting.

Morph targets (blend shapes)

Follow these guidelines when you want to export Morph targets in 3ds Max:

  • Apply the Morpher Modifier to the export Mesh with appropriate morph targets set up in the Channel List.
  • If you require 3ds Max animation keyframes, you can animate keyframes on the Mesh/modifier.
  • Before exporting the Mesh, eEnable the Animation > Deformed Models > Blend Shapes FBX Export option in 3ds Max.
  • If you also want to export skin deformation, enable the Animation > Deformed Models > Skins FBX Export option in 3ds Max before exporting the Mesh.

UV sets for Lightmapping

Unity has a built-in lightmapperA tool in Unity that bakes lightmaps according to the arrangement of lights and geometry in your scene. More info
See in Glossary
, but you can also create lightmapsA pre-rendered texture that contains the effects of light sources on static objects in the scene. Lightmaps are overlaid on top of scene geometry to create the effect of lighting. More info
See in Glossary
using texture baking (Render To Texture on the Rendering menu) feature and automatic unwrapping functionality in 3ds Max.

Usually one UV set is used for main texture and/or normal mapsA type of Bump Map texture that allows you to add surface detail such as bumps, grooves, and scratches to a model which catch the light as if they are represented by real geometry. More info
See in Glossary
, and another UV set is used for the lightmap Texture. For both UV sets to come through properly, set the Material in 3ds Max to Standard and set up both Diffuse (for the main Texture)and Self-Illumination (for the lightmap) map slots:

Material setup for Lightmapping in 3ds Max, using self-illumination map
Material setup for Lightmapping in 3ds Max, using self-illumination map

Note: If the object uses a Shell type of Material, Autodesk’s FBX exporter does not export UVs correctly.

Alternatively, you can use Multi/Sub Object material type and setup two sub-materials, using the main texture and the lightmap in their diffuse map slots, as shown below. However, if the faces in your Model use different sub-material IDs, this results in multiple materials being imported, which is not optimal for performance.

Alternate Material setup for Lightmapping in 3ds Max, using multi/sub object material
Alternate Material setup for Lightmapping in 3ds Max, using multi/sub object material

Exporting from LightWave

You can access the FBX export settings window inside LightWave by selecting Save > Export > Export FBX from the File toolbar in LightWave Layout:

Accessing FBX Export options in LightWave Layout
Accessing FBX Export options in LightWave Layout

The Export FBX window appears.

LightWave FBX Export Settings
LightWave FBX Export Settings
Property: Function:
FBX Filename Set the name and location of the FBX file. Use a location under the Unity Assets folder.
Anim Layer Name of the animation layerAn Animation Layer contains an Animation State Machine that controls animations of a model or part of it. An example of this is if you have a full-body layer for walking or jumping and a higher layer for upper-body motions such as throwing an object or shooting. The higher layers take precedence for the body parts they control. More info
See in Glossary
to use.
Type Use Binary to reduce filesize or ASCII for a text-editable FBX file.
FBX Version Select the most recent FBX version from the list, making sure that it matches the version that Unity is using.
Export
ModelsA 3D model representation of an object, such as a character, a building, or a piece of furniture. More info
See in Glossary
Export all models in the scene
Morphs (Blend Shapes) Export all blend shapes in the scene
Mesh type
Cage (Subdivision Off) Export the object without any subdivision applied to it
Subdivision Subdivide the mesh when it is exported
Re-parent bone hierarchy Create a null to act as the new parent of the bone hierarchy.

When exporting a rig from Layout with the bone hierarchy parented to the mesh, the actual movement of the deformed mesh is twice what it should be. Enabling this new parent keeps the mesh in place.
MaterialsAn asset that defines how a surface should be rendered, by including references to the Textures it uses, tiling information, Color tints and more. The available options for a Material depend on which Shader the Material is using. More info
See in Glossary
Convert LightWave’s standard Surface channels and image maps. This does not include procedural textures and nodes.
Embedded Textures Save embedded Textures as image maps included directly in the FBX file instead of in a separate image directory. This creates much larger, but self-contained, FBX files.
Smoothing Groups Convert LightWave’s normals into smoothing groups.
Collapse Materials Collapse surfaces with identical Material names, exporting the Materials separately. However, if both Material names and all surface parameters match, the two Materials are always merged, regardless of this setting.
Merge UVs Collapse multiple UV maps into a single map per object.
Unity 3D Mode Correct rotation errors caused by converting between coordinate systems across LightWave, FBX, and Unity.

Both LightWave and Unity use left-handed coordinate systems but FBX is right-handed. When LightWave exports to FBX, it converts to right-handed coordinates along the Z axis. When Unity imports the FBX file, it converts back to left-handed coordinates along the X axis, which results in an apparent 180 degree rotation of the scene. Using the setting means that when you go into Unity and look down the Z axis, the imported FBX looks exactly the same as it does inside LightWave.
CamerasA component which creates an image of a particular viewpoint in your scene. The output is either drawn to the screen or captured as a texture. More info
See in Glossary
Export all cameras in the scene.
Lights Export all lights in the scene.
Animations Export simple animations based on movement, rotation or scaling without baking. Character animation or other animation using IK or dynamics should still be baked, using Bake Motion Envelopes.
Bake Motion Envelopes Set an arbitrary start and end point for baking, in case there are setup frames you do not wish to capture. Only available if Animations is checked.
Start Frame and End Frame Export data only inside this timeframe.
Scale Scene Set a scale for your scene to match the Unity file scale value.

Did you find this page useful? Please give it a rating:

Preparing Humanoid Assets for export
Limitations on importing Models into Unity