diff options
Diffstat (limited to 'io_scene_gltf2/blender/exp/gltf2_blender_gather_nodes.py')
-rwxr-xr-x | io_scene_gltf2/blender/exp/gltf2_blender_gather_nodes.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/io_scene_gltf2/blender/exp/gltf2_blender_gather_nodes.py b/io_scene_gltf2/blender/exp/gltf2_blender_gather_nodes.py index 5332f4a9..7b58c0f9 100755 --- a/io_scene_gltf2/blender/exp/gltf2_blender_gather_nodes.py +++ b/io_scene_gltf2/blender/exp/gltf2_blender_gather_nodes.py @@ -127,6 +127,19 @@ def __filter_node(blender_object, blender_scene, export_settings): if export_settings[gltf2_blender_export_keys.SELECTED] and blender_object.select_get() is False: return False + if export_settings[gltf2_blender_export_keys.VISIBLE] and blender_object.visible_get() is False: + return False + + # render_get() doesn't exist, so unfortunately this won't take into account the Collection settings + if export_settings[gltf2_blender_export_keys.RENDERABLE] and blender_object.hide_render is True: + return False + + if export_settings[gltf2_blender_export_keys.ACTIVE_COLLECTION]: + found = any(x == blender_object for x in bpy.context.collection.all_objects) + + if not found: + return False + return True |