Better Fbx Importer & Exporter

by Mesh Online in Addons


How to invoke the add-on via Python script?

Yes, you can invoke the operator via script, to obtain the full API, switch to ‘Python Console’ windows.

Type ‘bpy.ops.better_export.fbx’ and type the ’Tab’ key, Blender will auto-complete the full API of the exporter.

Type ‘bpy.ops.better_import.fbx’ and type the ’Tab’ key, Blender will auto-complete the full API of the importer.

There are two examples:

bpy.ops.better_import.fbx(filepath="/Users/your name/Desktop/untitled.fbx", filter_glob="*.fbx;*.dae;*.obj;*.dxf;*.3ds", files=[{"name": "untitled.fbx", "path": "/Users/your name/Desktop/untitled.fbx"}], use_auto_bone_orientation=True, my_calculate_roll='None', my_bone_length=10, my_leaf_bone='Long', use_fix_bone_poses=False, use_fix_attributes=True, use_only_deform_bones=False, primary_bone_axis='Y', secondary_bone_axis='X', use_vertex_animation=True, use_animation=True, use_raw_keyframe=False, use_attach_to_selected_armature=False, my_animation_offset=0, use_animation_prefix=False, use_pivot=False, use_triangulate=False, my_import_normal='Import', use_auto_smooth=True, my_angle=60, my_shade_mode='Smooth', my_scale=1, use_optimize_for_blender=False, use_reset_mesh_origin=True, use_reset_mesh_rotation=True, use_edge_crease=True, my_edge_crease_scale=1, my_edge_smoothing='FBXSDK', use_detect_deform_bone=True, use_import_materials=True, use_rename_by_filename=False, use_fix_mesh_scaling=False, my_rotation_mode='QUATERNION', my_fbx_unit='cm', use_separate_collection=False)

bpy.ops.better_export.fbx(filepath="/Users/your name/Desktop/untitled.fbx", check_existing=True, filter_glob="*.fbx;*.dae;*.obj;*.dxf", my_file_type='.fbx', my_fbx_format='binary', my_fbx_version='FBX201800', my_fbx_axis='MayaZUp', my_fbx_unit='cm', use_selection=False, use_active_collection=False, use_visible=False, use_only_deform_bones=False, use_only_selected_deform_bones=False, use_vertex_animation=False, use_vertex_format='mcx', use_vertex_space='world', my_vertex_frame_start=1, my_vertex_frame_end=10, use_animation=True, use_raw_keyframe=False, use_timeline_range=False, my_animation_offset=0, use_apply_modifiers=True, use_include_armature_deform_modifier=False, use_triangulate=False, use_tangents=False, use_export_materials=True, use_raw_normals_and_raw_tangents=False, use_driver_based_shape_key=False, my_animation_type='Active', my_interpolation_type='Linear', use_concatenate_all=False, my_max_bone_influences='Unlimited', primary_bone_axis='Y', secondary_bone_axis='X', use_rigify_armature=False, use_rigify_root_bone=True, my_scale=1, use_optimize_for_game_engine=True, use_reset_mesh_origin=True, use_reset_mesh_rotation=True, use_only_root_empty_node=True, use_ignore_armature_node=True, use_edge_crease=True, my_edge_smoothing='FBXSDK', my_edge_crease_scale=1, use_separate_files=False, use_separate_collection=False, use_move_to_origin=False, my_material_style='Blender', use_embed_media=False, use_copy_texture=False, my_texture_subdirectory="textures", my_simplify_algorithm='0', my_simplify_keyframe_factor=1, use_unroll_filter=False, use_independent_animation_stack=False)

To Humble Bundle Users

If you had purchased the 'Humble Bundle', I'm afraid that you can't receive the regular upgrade.

To support the 'BLENDER_EEVEE_NEXT' render engine of Blender 4.2, please unzip 'better_fbx-5.4.18.zip', the contents should be in the directory of 'better_fbx-5.4.18'.

You may modify 'importer.py' and 'exporter.py' manually, replace all 'BLENDER_EEVEE' with 'BLENDER_EEVEE_NEXT'.

For your convenience, you can also download the two fixed files from: https://www.mesh-online.net/~test/fixed-files.zip, unzip the file, replace the original 'importer.py' and 'exporter.py' with the fixed 'importer.py' and 'exporter.py'.

Compress the directory of 'better_fbx-5.4.18' to 'better_fbx-5.4.18.zip' again.

Updated (July 31, 2024): 

The support team had updated the humble bundle files, so you can simply re-download your humble bundle package to get 'better_fbx-5.4.19.zip'.

Does it support Blender installed from Microsoft Store?

Blender installed from Microsoft Store uses special add-on directories, which will cause the add-on always can't find some files and keep crashing.

Please download and install Blender from the official website (www.blender.org) or other mirror websites.

BTW. One user told me that he created the missing add-on directory manually, and the issue disappeared.

I get various errors when I have upgraded the add-on to a new version.

Please restart Blender to let the new version take effect.

Does the add-on support virtual drives?

No, the add-on does not support virtual drives, such as iCloud, Dropbox, etc., please copy the FBX files to local drives, such as the "Desktop" directory, then import the FBX files.

How to custom axis when exporting?

There are five 'FBX Axis' types: 'MayaZUp', 'OpenGL', 'Unity', 'Unreal1', and 'Unreal2'.

'MayaZUp' is Blender compatible.

'OpenGL' is Game compatible.

'Unity' is Unity Editor compatible, rotate all contents 180 degrees around the vertical axis, let the character face to you in Unity Editor.

'Unreal1' is Unreal Editor compatible, rotate all contents -90 degrees around the vertical axis, let the character face to you in Unreal Editor.

'Unreal2' is Unreal Editor compatiblerotate all contents 90 degrees around the vertical axis, let the character back to you in Unreal Editor.

Why the add-on always throws the 'FileNotFoundError: [Errno 2] No such file or directory' error?

The current user is lack of write privilege, please launch Blender with 'run as administrator'.

What is the difference between the Seats?

Seats means persons, how many persons may use the add-on, if you are an individual user, you can install it on your Linux, Windows, and macOS, since there is only one person may use the add-on.

They are different licenses for different teams. For example, if a small team which has up to 20 artists who need to install the add-on, the team should purchase one license for 20 seats, it is much cheaper than purchasing 20 indie licenses, and the team can't purchase only one indie license and distribute the add-on to all their artists, for it is illegal in law.

Why does imported Daz FBX have only T pose?

Daz Studio will export the default pose instead of armature animation if you don't set pose on the timeline.

Please set at least two poses on the timeline, Daz Studio will export armature animation instead of the default pose.

The add-on does not support importing poses.

Does it support automatic bone orientation?

Yes, maybe it is the greatest feature of this add-on!

Because many other 3d softwares use different joint systems from Blender, when you import these FBX files to Blender, the bones orientations often look very ugly, it is really a nightmare.

This is the reason why I made this add-on, I can't bear it any more.

This add-on always automatically corrects the bones orientations, while remain the armature deform animations not changed.

The work is so reliable that I make it a default feature.

How many renderers does it support?

The add-on supports traditional Blender Renderer, mature Cycles Renderer and latest Eevee Renderer.

Please read the contents in the 'Cycles/Eevee Material' section to learn more details.

Should I bake animations before exporting to FBX files?

No, just export when you have finished your job.

Should I apply modifiers for the mesh before exporting to FBX file?

Yes, if the mesh has a 'Subdivision Surface' modifier and other modifiers, you need to apply the modifiers manually before exporting to FBX file, otherwise, the add-on will export the raw mesh, not the final mesh.

Note: There is a 'Apply Modifiers' option since v4.1.2, you need not apply modifiers anymore.

Can I export only parts of deform bones?

The add-on supports exporting parts of deform bones for Rigify Auto-Rigging System.

Select the 'rig', reveal the deform bones layer, enter 'EDIT' mode, select all the deform bones you want to export, quit 'EDIT' mode, export the rigged character and the armature, when exporting, enable both the 'Rigify Armature' option and the 'Only Selected Deform Bones' option.

This feature is very useful for game engines, for Rigify armature has up to 160 deform bones, usually we don't need all of them in game engines.

You can select necessary deform bones in 'EDIT' mode, then export, the unused vertex weights will be merged to the used deform bones automatically, so you don't need to re-skin your character.

Can the add-on export Auto-Rig Pro armature and animation?

Though the add-on can export Auto-Rig Pro armature and animation, the exported armature is not retarget-able.

I recommend that all Auto-Rig Pro users export FBX from its own exporter, the exported armature is optimized and retarget-able for Unity and Unreal Engines.

  • $28
  • $168
  • $280
  • $560
  • $840
$28

Have questions before purchasing?
Login to message

Details
Sales 10600+
Rating
119 ratings
Dev Fund Contributor
Published over 5 years ago
Software Version 4.3, 4.2, 4.1, 4.0, 3.6, 3.5, 3.4, 3.3, 3.2, 3.1, 3.0, 2.93, 2.92, 2.91, 2.9, 2.83, 2.82
License GPL