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:
authorBastien Montagne <montagne29@wanadoo.fr>2019-05-11 18:11:15 +0300
committerBastien Montagne <montagne29@wanadoo.fr>2019-05-11 18:11:15 +0300
commit0d4c095e9a163987d664a36baa90937e4b93847a (patch)
treeb6178019e0886810d884da0cc4baf4f097a02be9 /io_scene_fbx/import_fbx.py
parent9524a08a60cf570e9b0540a6ae195a269b403817 (diff)
Revert "Fix (unreported) broken FBX import due to API change."
This reverts commit 9524a08a60cf570e9b0540a6ae195a269b403817.
Diffstat (limited to 'io_scene_fbx/import_fbx.py')
-rw-r--r--io_scene_fbx/import_fbx.py28
1 files changed, 15 insertions, 13 deletions
diff --git a/io_scene_fbx/import_fbx.py b/io_scene_fbx/import_fbx.py
index 92f9bef4..26e31363 100644
--- a/io_scene_fbx/import_fbx.py
+++ b/io_scene_fbx/import_fbx.py
@@ -1928,7 +1928,7 @@ class FbxImportHelperNode:
child_connect_finalize(bone, connect_ctx)
return bone
- def build_node_obj(self, fbx_tmpl, settings, view_layer):
+ def build_node_obj(self, fbx_tmpl, settings):
if self.bl_obj:
return self.bl_obj
@@ -1948,19 +1948,13 @@ class FbxImportHelperNode:
# Misc Attributes
obj.color[0:3] = elem_props_get_color_rgb(fbx_props, b'Color', (0.8, 0.8, 0.8))
+ obj.hide_viewport = not bool(elem_props_get_visibility(fbx_props, b'Visibility', 1.0))
obj.matrix_basis = self.get_matrix()
if settings.use_custom_props:
blen_read_custom_properties(self.fbx_elem, obj, settings)
- # Instance in scene.
- view_layer.active_layer_collection.collection.objects.link(obj)
-
- # This has to be done after instancing in scene.
- obj.hide_set(not bool(elem_props_get_visibility(fbx_props, b'Visibility', 1.0)))
- obj.select_set(True)
-
return obj
def build_skeleton_children(self, fbx_tmpl, settings, scene, view_layer):
@@ -1972,7 +1966,7 @@ class FbxImportHelperNode:
return None
else:
# child is not a bone
- obj = self.build_node_obj(fbx_tmpl, settings, view_layer)
+ obj = self.build_node_obj(fbx_tmpl, settings)
if obj is None:
return None
@@ -1982,6 +1976,10 @@ class FbxImportHelperNode:
continue
child.build_skeleton_children(fbx_tmpl, settings, scene, view_layer)
+ # instance in scene
+ view_layer.active_layer_collection.collection.objects.link(obj)
+ obj.select_set(True)
+
return obj
def link_skeleton_children(self, fbx_tmpl, settings, scene):
@@ -2114,8 +2112,8 @@ class FbxImportHelperNode:
# Switch to Edit mode.
view_layer.objects.active = arm
- is_hidden = arm.hide_get()
- arm.hide_set(False) # Can't switch to Edit mode hidden objects...
+ is_hidden = arm.hide_viewport
+ arm.hide_viewport = False # Can't switch to Edit mode hidden objects...
bpy.ops.object.mode_set(mode='EDIT')
for child in self.children:
@@ -2126,7 +2124,7 @@ class FbxImportHelperNode:
bpy.ops.object.mode_set(mode='OBJECT')
- arm.hide_set(is_hidden)
+ arm.hide_viewport = is_hidden
# Set pose matrix
for child in self.children:
@@ -2143,12 +2141,16 @@ class FbxImportHelperNode:
return arm
elif self.fbx_elem and not self.is_bone:
- obj = self.build_node_obj(fbx_tmpl, settings, view_layer)
+ obj = self.build_node_obj(fbx_tmpl, settings)
# walk through children
for child in self.children:
child.build_hierarchy(fbx_tmpl, settings, scene, view_layer)
+ # instance in scene
+ view_layer.active_layer_collection.collection.objects.link(obj)
+ obj.select_set(True)
+
return obj
else:
for child in self.children: