From 9a7d0db875af1ece1f7ed6e10664fddb94f5fb9e Mon Sep 17 00:00:00 2001 From: Julien Duroure <julien.duroure@gmail.com> Date: Wed, 4 Sep 2019 23:39:56 +0200 Subject: [PATCH] glTF importer: set track name from gltf animation name --- io_scene_gltf2/__init__.py | 2 +- io_scene_gltf2/blender/imp/gltf2_blender_animation_bone.py | 3 ++- io_scene_gltf2/blender/imp/gltf2_blender_animation_node.py | 3 ++- io_scene_gltf2/blender/imp/gltf2_blender_animation_utils.py | 4 ++-- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/io_scene_gltf2/__init__.py b/io_scene_gltf2/__init__.py index 468b845b9..f06eb439a 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, Norbert Nopper, Urs Hanselmann, Moritz Becher, Benjamin Schmithüsen, Jim Eckerlein, and many external contributors', - "version": (0, 9, 56), + "version": (0, 9, 57), 'blender': (2, 81, 6), 'location': 'File > Import-Export', 'description': 'Import-Export as glTF 2.0', diff --git a/io_scene_gltf2/blender/imp/gltf2_blender_animation_bone.py b/io_scene_gltf2/blender/imp/gltf2_blender_animation_bone.py index d049afba5..ef88bc372 100755 --- a/io_scene_gltf2/blender/imp/gltf2_blender_animation_bone.py +++ b/io_scene_gltf2/blender/imp/gltf2_blender_animation_bone.py @@ -53,7 +53,8 @@ class BlenderBoneAnim(): start_frame = bpy.context.scene.frame_start - simulate_stash(obj, bpy.data.actions[action_name], start_frame) + animation_name = gltf.data.animations[anim_idx].name + simulate_stash(obj, animation_name, bpy.data.actions[action_name], start_frame) gltf.actions_stashed[(obj.name, action_name)] = True diff --git a/io_scene_gltf2/blender/imp/gltf2_blender_animation_node.py b/io_scene_gltf2/blender/imp/gltf2_blender_animation_node.py index 498cbc89b..cf570a203 100755 --- a/io_scene_gltf2/blender/imp/gltf2_blender_animation_node.py +++ b/io_scene_gltf2/blender/imp/gltf2_blender_animation_node.py @@ -53,7 +53,8 @@ class BlenderNodeAnim(): start_frame = bpy.context.scene.frame_start - simulate_stash(obj, bpy.data.actions[action_name], start_frame) + animation_name = gltf.data.animations[anim_idx].name + simulate_stash(obj, animation_name, bpy.data.actions[action_name], start_frame) gltf.actions_stashed[(obj.name, action_name)] = True diff --git a/io_scene_gltf2/blender/imp/gltf2_blender_animation_utils.py b/io_scene_gltf2/blender/imp/gltf2_blender_animation_utils.py index c2ac3bed3..888d88a49 100644 --- a/io_scene_gltf2/blender/imp/gltf2_blender_animation_utils.py +++ b/io_scene_gltf2/blender/imp/gltf2_blender_animation_utils.py @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -def simulate_stash(obj, action, start_frame): +def simulate_stash(obj, gltf_animation_name, action, start_frame): # Simulate stash : # * add a track # * add an action on track @@ -20,7 +20,7 @@ def simulate_stash(obj, action, start_frame): # * remove active action from object tracks = obj.animation_data.nla_tracks new_track = tracks.new(prev=None) - new_track.name = action.name + new_track.name = gltf_animation_name if gltf_animation_name is not None else action.name strip = new_track.strips.new(action.name, start_frame, action) new_track.lock = True new_track.mute = True -- GitLab