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:
authorIan Munsie <DarkStarSword>2019-10-03 16:35:18 +0300
committerBastien Montagne <montagne29@wanadoo.fr>2019-10-03 16:35:18 +0300
commitb57772a8831e1f618d37ac4a3386c070dbc425b6 (patch)
tree9f6bc56cc3d218c2c54c74b4ec3cba7d5d24fbfa /io_scene_fbx
parent53e661378bae51240e7a4cb59227b99a882095bc (diff)
FBX Import: add support to load several FBX files at once.
Differential Revision: https://developer.blender.org/D5866
Diffstat (limited to 'io_scene_fbx')
-rw-r--r--io_scene_fbx/__init__.py23
1 files changed, 20 insertions, 3 deletions
diff --git a/io_scene_fbx/__init__.py b/io_scene_fbx/__init__.py
index 7fdef2b0..b836f1b0 100644
--- a/io_scene_fbx/__init__.py
+++ b/io_scene_fbx/__init__.py
@@ -21,7 +21,7 @@
bl_info = {
"name": "FBX format",
"author": "Campbell Barton, Bastien Montagne, Jens Restemeier",
- "version": (4, 17, 3),
+ "version": (4, 18, 0),
"blender": (2, 81, 6),
"location": "File > Import-Export",
"description": "FBX IO meshes, UV's, vertex colors, materials, textures, cameras, lamps and actions",
@@ -48,6 +48,7 @@ from bpy.props import (
BoolProperty,
FloatProperty,
EnumProperty,
+ CollectionProperty,
)
from bpy_extras.io_utils import (
ImportHelper,
@@ -70,6 +71,11 @@ class ImportFBX(bpy.types.Operator, ImportHelper):
filename_ext = ".fbx"
filter_glob: StringProperty(default="*.fbx", options={'HIDDEN'})
+ files: CollectionProperty(
+ name="File Path",
+ type=bpy.types.OperatorFileListElement,
+ )
+
ui_tab: EnumProperty(
items=(('MAIN', "Main", "Main basic settings"),
('ARMATURE', "Armatures", "Armature-related settings"),
@@ -197,10 +203,21 @@ class ImportFBX(bpy.types.Operator, ImportHelper):
pass
def execute(self, context):
- keywords = self.as_keywords(ignore=("filter_glob", "directory", "ui_tab"))
+ keywords = self.as_keywords(ignore=("filter_glob", "directory", "ui_tab", "filepath", "files"))
from . import import_fbx
- return import_fbx.load(self, context, **keywords)
+ import os
+
+ if self.files:
+ ret = {'CANCELLED'}
+ dirname = os.path.dirname(self.filepath)
+ for file in self.files:
+ path = os.path.join(dirname, file.name)
+ if import_fbx.load(self, context, filepath=path, **keywords) == {'FINISHED'}:
+ ret = {'FINISHED'}
+ return ret
+ else:
+ return import_fbx.load(self, context, filepath=self.filepath, **keywords)
class FBX_PT_import_include(bpy.types.Panel):