Confused About Importing FBX Objects and Transform Locations

Diving into Unreal but I’m at a loss to understand exactly how the transform location of an object actually works - it’s different than Unity and Stingray…

What I want to do is actually import an object with it’s transform gizmo centered on the object itself, but having a way to automatically place it in the correct world location.

Scenario 1
On import the Transform Vertex option is checked.
When dragging the object into the level scene I can zero out the transform locations and the object is correctly positioned.
However, the transform gizmo is located at the 0,0,0 origin point of the level. This is a problem.

Scenario 2
Transform Vertex option is UNchecked.
The scale of the object is too small after importing.
The transform location is centered on the object, but I would have to manually locate that object within the scene. This is a major problem.

The 2 or 3 scripts out there that allowed you to import your object correctly into the world location based on the Max scene, and then center the transform gizmos to each object, are no longer working with Max2017.

Does anyone have a workaround or method to get this right?


In Unreal the pivot will be placed at the origin, so before you export you need to move the object to 0,0,0 so that it ends up in the correct location on the object. The workflow is assumed to be that you import modular parts into the engine and then design your level there where you would be placing each object in UE4.
There is an option though where you can place your objects in 3ds Max and then export it all to FBX and it will import each individual object into the content browser and then make a Blueprint file that contains their scene positions and instancing:

Gotcha! Very nice. I’m noticing however that several objects brought into the level in this manner have their transform origins shifted slightly than what is shown in Max. Any tips there?

Make sure your part origin is at 0,0,0 in Max before you export. The fbx export uses Max’s origin.

I 0,0,0 everything on max export and it imports fine. If exporting multiple mesh for some reason and getting weird results try putting all mesh’s in a container and then export with all mesh’s selected. Without the container can cause anomalies (this is my experience at least).

Also, make sure you reset Xform, (do this before making your instances since it will remove instancing)
There’s also a bug in 3ds Max where the pivot won’t be where you set it, you have to go into Adjust Pivot and then select the Move tool and wave your mouse around the screen and it’ll pop back into place, then you have to do the same with the Rotate and Scale tools.

Thanks for all the tips. Just to clarify, I’m building archviz scenes so 0,0,0 all the objects in Max and then manually constructing the scene within Unreal itself just isn’t an option.

darthviper107, the reset Xform did the trick with the slightly offet pivots upon importing into Unreal.

Tnx again, folks.

put your whole scene in a container before export and then 0,0,0 the container

Allenheathx, I understand the concept but what’s the workflow there? Are you closing the container then importing that file into Unreal? Sorry, I never really use containers so a bit lost there…

Any tips on working with the container and FBX import?

Just giving this a BUMP! Would love to know some more detail about containers and FBX import!

Sorry for dragging this topic on but I completely relate to OP’s dilemma and I’m struggling getting “Import into Level” to work. Does anyone know of any video documentation of the process (i.e. a house full of assets in 3ds max being successfully imported into UE4 all with preserved pivot origins)?

So How can i get max position from unreal using c++?