diff --git a/io_scene_gltf2/__init__.py b/io_scene_gltf2/__init__.py index ab7aebb46a4c0fea5c871343e17b29dfd500f579..8787fe2e64b6d38382ce28fc422101fc830cf47e 100755 --- a/io_scene_gltf2/__init__.py +++ b/io_scene_gltf2/__init__.py @@ -15,7 +15,7 @@ bl_info = { 'name': 'glTF 2.0 format', 'author': 'Julien Duroure, Scurest, Norbert Nopper, Urs Hanselmann, Moritz Becher, Benjamin Schmithüsen, Jim Eckerlein, and many external contributors', - "version": (1, 7, 19), + "version": (1, 7, 20), 'blender': (2, 91, 0), 'location': 'File > Import-Export', 'description': 'Import-Export as glTF 2.0', diff --git a/io_scene_gltf2/blender/exp/gltf2_blender_gather_drivers.py b/io_scene_gltf2/blender/exp/gltf2_blender_gather_drivers.py index 4dcad66f1af070f6e3095771511213112afbdd8e..561f246c1f2fcaabbe5e75621f029d34b7de0639 100644 --- a/io_scene_gltf2/blender/exp/gltf2_blender_gather_drivers.py +++ b/io_scene_gltf2/blender/exp/gltf2_blender_gather_drivers.py @@ -56,6 +56,9 @@ def get_sk_drivers(blender_armature): sk_name = child.data.shape_keys.path_resolve(get_target_object_path(sk_c.data_path)).name except: continue + # Do not take into account this driver if corresponding SK is disabled + if child.data.shape_keys.key_blocks[sk_name].mute is True: + continue idx = shapekeys_idx[sk_name] idx_channel_mapping.append((shapekeys_idx[sk_name], sk_c)) existing_idx = dict(idx_channel_mapping) @@ -65,7 +68,8 @@ def get_sk_drivers(blender_armature): else: all_sorted_channels.append(existing_idx[i]) - drivers.append((child, tuple(all_sorted_channels))) + if len(all_sorted_channels) > 0: + drivers.append((child, tuple(all_sorted_channels))) return tuple(drivers)