Download

FBX Import Options missing unit setup?

I think that FBX Import Options is missing unit setup. I set up 3DS Max for 1-meter unit, create 3D model, and set 3DS Max’s FBX exporter for 1-meter unit. Since UE4’s FBX importer doesn’t have unit setup, UE4 thinks that the FBX file was set up for 1-cm unit, not 1-meter unit. I created a box that is 100 units long, high, and wide in 3DS Max and exported it to FBX file. I imported the FBX file into UE4 and created a box that is 100 units long, high, and wide within UE4. The boxes are the same size.

Default in UE is 1 unit = 1cm. This is referred to as a real world measurement.

A Unit is not a true measurement but a means to have a set value that is true in any application being used. A Unit is the same set value in Maya, 3ds Max, Blender or even UE4.

A box made in Max 100X100X100 units would be expected to be the same “if” you are only using units as the means of measurement and only changes when you apply a true form of measurement relative to other objects with in the same scene.

In 3ds Max there are two two ways to manage measurement requirements.

System Unit Setup.

This is where you tell world space how big objects are to one another based on their relative scale using units as the base reference. If you have your units set to 1 unit = 1 inch you can then measure all things relative to world space. If you change this to 1 unit to 1 meter then everything becomes much bigger but should still be relative to real world measurements. To keep your sanity I would highly recommend that you set this to 1 unit = 1cm as this is the world setting that the majority of all 3d applications are now using and if you change this your going to run into some serious scaling problems.

Display Unit Setup.

In a nut shell this is where you select the type of measuring tape you would use as to how big objects relative in size are to one another relating to how world space sees them. Most get confused by this thinking it changes world scaling but all it does is swaps out the measuring tape.

The key here though is UE4 now uses real wold scale. You measure a door frame it does not really mater what your world scale is set to as long as it’s equal as to true world scale and if you brought an object into UE based on units of measurement and it changes then you really have a problem.

Do I have to scale 3D model up 100X in 3DS Max just before exporting 3D model to FBX file?

Nope you should not have to scale anything at all when exporting or importing to UE4 and is why you do not need a scale option in FBX when importing into UE.

Here is the root of the problem.

When working in any 3d editing application you always work based on relative scale. You make a trash can with out a scale reference it becomes the reference. You make a lid for the trash can it’s scale is relative to the can and if you add a light pole it’s scale is relative to the trash can and lid and on and on until you complete your scene ready for export.

Once imported you discover that the entire scene is to big and you think that you are using the wrong scale when in fact you started building stuff around an object that did not have a fixed know scale as to a real world measurement. Instead of making it the size of a real trash can you made it the size of a two story building and then build everything around it relative to the size as scale.

So to start what you need is a fixed know reference starting point in a scene that has nothing in it based on the application of where all of this stuff is going.

What we do know about scale in UE is that it (A) uses real world scale (B) that 1 unit = 1cm and that (C ) the base player model is 196 units tall.

So if we set our System Unit Setup to 1 unit = 1cm then things will always jive with UE when a true form of measurement is applied and we now know a fixed value as to a relative size of an object in UE, the player model, to set our starting point as relative to all objects built around it.

So with our SUS set to 1-1 and working in units, if we want to, you would make a simple box length 100 width 100 height 196, which translates to 196 centimeters tall or six foot five inches, and now when he make the trash can, lid, and light pole and so on and so on they are all relative to be scaled to the player model.

Now the important part.

Once you have your base reference point set never change the SUS as your reference will be adjusted to the new wold reference as in if 1 unit now = 1 meter your reference has now become 100 times bigger.

A bit of a read but if you always start with a single object of a know size that will always be true in UE then you should never have to worry about anything being relative in scale built around it or have to do any kind of scale adjustment no mater what form of display measurement you use.

I already set both System Unit Setup and Display Unit Setup to 1 unit = 1 meter and already was working on 3D model of a city to be imported into UE4. The 3D model of the city is 100X too small in UE4 when using the Blueprint FPS or Blueprint 3rd Person templates. I was creating the 3D model of the city for Unity 3D game engine and I decided to try out UE4 to see if UE4 was better than Unity 3D.

OK I have to ask.

Why are you setting you world scale to 1 unit = 1 meter when ue4 uses 1 unit = 1 centimeter?

There are 100 centimeters in a meter so if you set to 1 unit = 1 centimeter and try to load the asset Max will ask you if you want to scale to the current SUS. If you say yes and it will come in 100X bigger.

Or

When you export by FBX tell it to export in centimeters as I believe it’s set to auto in which case it will go out in meters (100X to small)

I set System Unit Setup to 1 unit = 1 centimeter and Display Unit Setup to 1 unit = 1 meter before loading the 3D model of the city into 3DS Max and allowed 3DS Max to convert the file unit to system unit. I exported the 3D model of the city to new FBX file. When I import the 3D model of the city into UE4, the streets appear to be of correct width but I need something like a ruler to see if streets are to be of correct width. I didn’t model the buildings for the city yet. This forum doesn’t allow me to post screenshots.

Yeah it’s a common problem moving from one edit environment into another as most applications do not share the same FOV of their particular perspective viewpoint.

Give it a go.

Hit play in UE, drop the console, type FOV 120 and watch how the perspective changes.

A little trust here perspective is just an illusion effect based on perspective but if one thing looks right then it all has to be right.

To check for yourself though as to validation you could start a project with the base assets included, drag one of the starter character’s into your scene, knowing it’s six foot five inches and use that as your relative scale model.

For myself though, as a tip, I generally make a box proxy of know size and scale in 3ds Max, in the case of UE 100X100X196 units, and if the base player model fits inside it your golden.