[Bf-extensions-cvs] [9a7d0db8] master: glTF importer: set track name from gltf animation name

Julien Duroure noreply at git.blender.org
Wed Sep 4 23:40:17 CEST 2019


Commit: 9a7d0db875af1ece1f7ed6e10664fddb94f5fb9e
Author: Julien Duroure
Date:   Wed Sep 4 23:39:56 2019 +0200
Branches: master
https://developer.blender.org/rBA9a7d0db875af1ece1f7ed6e10664fddb94f5fb9e

glTF importer: set track name from gltf animation name

===================================================================

M	io_scene_gltf2/__init__.py
M	io_scene_gltf2/blender/imp/gltf2_blender_animation_bone.py
M	io_scene_gltf2/blender/imp/gltf2_blender_animation_node.py
M	io_scene_gltf2/blender/imp/gltf2_blender_animation_utils.py

===================================================================

diff --git a/io_scene_gltf2/__init__.py b/io_scene_gltf2/__init__.py
index 468b845b..f06eb439 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 d049afba..ef88bc37 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 498cbc89..cf570a20 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 c2ac3bed..888d88a4 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



More information about the Bf-extensions-cvs mailing list