12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- # exports each selected object into its own file
- import bpy
- import os
- # export to blend file location
- basedir = os.path.dirname(bpy.data.filepath)
- if not basedir:
- raise Exception("Blend file is not saved")
- view_layer = bpy.context.view_layer
- obj_active = view_layer.objects.active
- selection = bpy.context.selected_objects
- bpy.ops.object.select_all(action='DESELECT')
- for obj in selection:
- obj.select_set(True)
- # some exporters only use the active object
- view_layer.objects.active = obj
- name = bpy.path.clean_name(obj.name)
- fn = os.path.join(basedir, name)
- bpy.ops.export_scene.fbx(filepath=fn + ".fbx", use_selection=True)
- # Can be used for multiple formats
- # bpy.ops.export_scene.x3d(filepath=fn + ".x3d", use_selection=True)
- obj.select_set(False)
- print("written:", fn)
- view_layer.objects.active = obj_active
- for obj in selection:
- obj.select_set(True)
|