Better FBX Importer & Exporter Add-on

Quaternions have more benefits than Euler angles, so it’s better to keep it as default.

You can edit importer.py in the better_fbx folder and search and replace all copies of QUATERNION with XYZ to get that default. Make sure you use case sensitive search, you only want to replace it if it’s in uppercase.

I’ve tested this and it seems to work fine. Would be an easy option to add to the importer.

1 Like

@meshonline Yes, quaternion is much better when dealing with animation data on an fbx (less flipping), but not so nice when you want to work with degrees of rotation on imported assets. I just end up changing them one by one and was wondering if there was a setting. No worries!

@obsurveyor Thanks! That’s a great workaround!

I have almost finished the feature, I added a new option - ‘Rotation Mode’, and I make the ‘XYZ Euler’ as default, the other value is ‘Quaternion’, I’ll update the product soon.

I don’t recommend making XYZ the default. If you do this, there could be a lot of people that get confused why their FBX imports are no longer importing bones as Quaternion since that has been the default for a long time. If you are going to make it the default, then you should make sure to clearly document this, inform your users(maybe even ask them which should be default) and make it a major version update.

Also if you’re adding the option you should go ahead and add all the rotation modes:

QUATERNION
XYZ
XZY
YXZ
YZX
ZXY
ZYX
AXIS_ANGLE

Thank you @obsurveyor I’ll keep ‘QUATERNION’ as the default value, and add all the rotation modes in the list.

Updated the product.

2 Likes

Is it possible to update the tutorial video? I’m trying to export a model to unity using the plugin and the unity shader option, but my textures aren’t there, even though I’ve followed the BDSF material template.
These new features aren’t covered in the latest video.
Thanks!

I assume that you had already setup the material style to ‘Unity Engine’ when exporting, when importing to Unity, in the ‘Materials’ tab of the inspector, please check that the ‘Material Create Mode’ is ‘Import via MaterialDescription’, the ‘Location’ is ‘Use Embedded Materials’, if you had embedded textures, please click the ‘Extract Textures…’ button to extract all embedded textures, otherwise, please click the ‘Extract Materials…’ button to extract the material in the FBX file.
When you drag the imported asset to the scene, it will create an instance of the 3d model, the material shader will be ‘Autodesk Interactive’ automatically, all channels should appear, if you prefer the default shader, you need to assign the metallic and roughness textures manually.

Thanks for the tips. I followed them and it worked a treat :smiley:
Awesome sauce. This addon keeps getting better !

Hello!

I’ve just purchaised Better Fbx Importer & Exporter on BlenderMarket (Order bw6ch5 (#594360)), but I CAN’T see any links to downlod versions suitable for blender 2.91 or newer. Am I so stupid, or something wrong with my order? I’m in a panic hurry with my current work project, so just sorry for flooding this topic. I also wrote you a message on BlenderMarket.

The newest download I see on my BlenderMarket order is also Blender 2.8.

The version for Blender 2.8 is also compatible with Blender 2.9x, 3.0x, and 3.1x.

Does this addon exports and imports with correct scale. Eg importin from 3ds max won’t scale model to 0.0001 or exporting to max makes model 10000 of a scale?

It depends on the default unit you are using, if both units are metre, you don’t need to do any thing; If not, there is a ‘Scale’ option to adjust the scaling manually when importing and exporting.

Blender is set to cm. Exporting from blender defualt FBX exporter will make make it like this. Scale in blender 1.0 and scale in 3ds max 10000 (instead of 100).
Another example is when exporting from blender to marmoset. The object is x100 smaller and instead of a meter it’s 1mm. And only way for marmo to work is to force the scale in the settings to CM even tho blender is set by meters by default.

Can this handle files from an older version of Motionbuilder? I have MB5.5 and it would be handy to be able to load the FBX directly into Blender. The native FBX importer doesn’t work, gives the old error about version numbers and it would be a PITA to have to go through the old autodesk converter each time.

Hi! Great addon. But I have one issue after exporting it to unity. My mesh have a mask modifier enabled, to hide some geometry. After export my model into unity mask modifier doesn’t apply, and my mesh show all geometry, including hiden. I even checked “apply modifiers” option, it still wouldn’t apply the modifier. The native blender fbx exporter apply required modifier on export, means it’s not my mesh problems.

Does the mesh have ‘Shape Keys’? If a mesh has any ‘Shape Keys’, it will not apply modifiers.
This is a test file, it works on my machine.
untitled.blend (829.9 KB)

Just uploaded a test file.