Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'io_scene_fbx')
-rw-r--r--io_scene_fbx/export_fbx_bin.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/io_scene_fbx/export_fbx_bin.py b/io_scene_fbx/export_fbx_bin.py
index e399c807..a64e9a83 100644
--- a/io_scene_fbx/export_fbx_bin.py
+++ b/io_scene_fbx/export_fbx_bin.py
@@ -2228,7 +2228,10 @@ def fbx_data_from_scene(scene, depsgraph, settings):
if backup_pose_positions:
depsgraph.update()
ob_to_convert = ob.evaluated_get(depsgraph) if settings.use_mesh_modifiers else ob
- tmp_me = ob_to_convert.to_mesh()
+ # NOTE: The dependency graph might be re-evaluating multiple times, which could
+ # potentially free the mesh created early on. So we put those meshes to bmain and
+ # free them afterwards. Not ideal but ensures correct ownerwhip.
+ tmp_me = bpy.data.meshes.new_from_object(ob_to_convert)
data_meshes[ob_obj] = (get_blenderID_key(tmp_me), tmp_me, True)
# Change armatures back.
for armature, pose_position in backup_pose_positions: