OBJ to FBX,
ready for the engine

OBJ is a plain, dependable geometry format. FBX is the working container most engines, animation teams and DCC pipelines expect. Blender can bridge them in a few minutes, but the useful conversion is the one that keeps the material readable, the scale honest and the transform predictable at the other end.

A mechanical lantern prop in the Blender viewport with a rotation gizmo and material preview spheres

The simplest OBJ conversion is File, Import, File, Export. That version often loses the parts that matter: a texture path, the intended scale, the difference between a static prop and a character, or the object origin the receiving pipeline expects. A professional conversion is mostly a verification pass. You need to know what OBJ can carry, what FBX can add, and which assumptions will survive the handoff to Unity, Unreal, a render farm or a client workstation.

What travels from OBJ to FBX

Asset layerOBJ sourceFBX export
Geometry and UVsStored in the OBJPreserved if the mesh is valid
MaterialsBasic MTL: diffuse colour and a few mapsRebuilt from the Blender material nodes
TexturesExternal files referenced by MTL pathsExternal files or embedded media
Rig and animationNoneOnly if added in Blender before export
Scene hierarchyGrouped objects, not a full scene graphBlender hierarchy and empty parents
Units and orientationConvention, not a self-describing unitExporter settings and destination import

The practical consequence is that OBJ cannot give you a rig. If the source is a static sculpt or a prop, that is fine. If the job needs a skeleton, add it in Blender and export the armature and mesh together. Do not expect FBX to invent animation data that the OBJ never carried.

The conversion workflow

01 - Import and read the scene. Use File, Import, Wavefront OBJ. Check the importer report for missing MTL references and inspect the outliner before selecting anything. OBJ files often arrive as several objects or a single merged mesh. Decide whether the parts need to remain separate for animation, collision or material assignment.

02 - Re-link the textures. Open the material and make sure the base colour image is actually connected. An OBJ can reference an MTL that exists but points at a file the current machine cannot find. Re-link the image, set the colour space correctly for colour versus data maps, and pack the resources if the FBX is leaving your machine.

03 - Fix scale and orientation. Compare a known dimension with a real object or a reference cube. Apply rotation and scale on the mesh once the number is correct. Put the origin where the destination expects it: at the bottom centre for a prop, at the feet for a character, at the pivot for a door or wheel. This is much easier to verify in Blender than after import in another application.

04 - Rebuild the material for FBX. FBX supports more material structure than OBJ, but the receiving engine still reads a limited set of inputs. Check the Principled BSDF, name the materials clearly, avoid relying on procedural nodes that will not export, and bake anything that must remain visually exact. If the target uses physically based rendering, keep the base colour, metallic, roughness and normal maps explicit and connected.

05 - Export selected objects. File, Export, FBX. Select the mesh and its armature rather than exporting the whole scene, because a stray camera, light or hidden object can confuse the receiving team. Choose the destination unit scale, enable the relevant smoothing and tangent options, decide whether to embed media, and save a test copy before changing advanced settings.

06 - Verify at the destination. Import the FBX into a clean scene in the target application. Check dimensions, origin, texture assignment, normals and the orientation of any attached object. A file that looks correct in the Blender viewport can still be rotated ninety degrees or scaled by one hundred in the engine. Test once, document the import preset, and reuse it for the rest of the batch.

Engine settings that save time

DestinationWhat to confirmCommon symptom when missed
UnityScale factor, Y-up import, material remapModel tiny, rotated or bright pink
Unreal EngineCentimetre scale, forward axis, collision setupAsset enormous or facing the wrong way
Blender to BlenderApply transforms, keep object names stableNested scale that ruins later edits
Render farmEmbed or collect every textureMissing maps on a different machine
Client handoffRelative texture paths and a READMEGrey model in a viewer with no assets beside it

The traps worth checking twice

Broken MTL paths. The OBJ can be perfect while the MTL points at a folder that only existed on the author machine. Open the material, find the image, and use Pack Resources if the receiving application accepts embedded media. For external delivery, keep the model, MTL and texture folder together and test the package from a different folder.

Procedural materials that cannot travel. A node graph that looks beautiful in Blender may reduce to a flat base colour in FBX. Bake the result into image maps or rebuild the material with the inputs the target engine supports. The visual difference is usually not a conversion bug; it is an unsupported shader feature.

Hidden scale and parenting. A mesh can look correct while its transform carries a non-uniform scale or a rotated parent empty. Apply rotation and scale before export, then inspect the origin after import. Doing this once at the source prevents a week of "why is this asset different in every scene" debugging.

Materials with duplicate names. Multiple materials called "Material.001" can collide when a game pipeline merges assets. Rename them by surface and purpose - body_paint, glass_clear, rubber_grip - before the file leaves your project. Small housekeeping now saves a lot of rework later.

When FBX is the wrong destination

FBX is excellent for engines and animation, but it is not the best delivery format for every situation. A GLB is more compact for the web; USDZ is the practical route for Apple AR; STL is what a slicer expects for printing. If the receiving application only needs static geometry, OBJ may be enough and the extra material complexity of FBX is noise. Choose the container for the job, not because it is the most familiar extension in the export menu.

For generated assets, the same principle applies before conversion: check the mesh, the scale and the material while you can still see what is wrong. The game-asset workflowcovers that cleanup pass, and the FBX to GLB guidecovers the opposite direction when the next stop is a browser viewer rather than an engine.

Keep going

The pages that answer the next question.

Frequently asked questions

Short answers to what people ask before they commit.

Does OBJ to FBX keep textures?⌄

The images survive the trip only if they are available on disk and connected to the material before export. An OBJ travels with an MTL file that points to texture paths; a broken path produces a grey or pink model. Re-link the images in Blender, pack them into the FBX, or keep the texture folder beside the exported file and preserve the relative paths.

Why is my FBX rotated or the wrong size in Unity?⌄

The two applications can disagree about up axis, handedness and scene units. Blender is Z-up and treats one unit as one metre by default; many engines expect Y-up and a specific import scale. Check the transform on import in the destination engine, apply rotation and scale in Blender before export, and confirm the result with a known measurement rather than guessing from the viewport.

Can an OBJ carry animation or a skeleton into FBX?⌄

No. OBJ is static geometry, UVs and a basic material reference. If the asset needs a rig or animation, import the OBJ, build or add the rig in Blender, and export those Blender objects to FBX. Converting an OBJ alone cannot recover animation that was never in the source file.

Should I apply scale before exporting?⌄

Yes, for a clean handoff. Select the mesh, apply rotation and scale, and make sure the origin is where the receiving team expects it. Non-uniform object scale is a common reason a character looks normal in Blender but arrives stretched, tiny or misplaced in an engine. Applying the transform makes the geometry itself honest.

Why is the FBX much larger than the OBJ?⌄

Embedded media is the usual reason. FBX can carry textures inside the file, while OBJ keeps them as external images and a small MTL text file. If size matters, export without embedding media and deliver a texture folder, or compress the images before export. Check that you are not also exporting hidden objects or unused animation data.

Put the workflow to work.

Sign in with Google, pick a plan, and generate your first asset.

Compare plans
OBJ to FBX in Blender: Materials, Scale and Export