From e8244eb4d7c62feea91706436afc9eeacd494a27 Mon Sep 17 00:00:00 2001 From: Julien Duroure Date: Sat, 4 Jun 2022 08:59:13 +0200 Subject: glTF exporter: Fix only def bone export when parent are different (def -> nondef -> def) --- io_scene_gltf2/__init__.py | 2 +- io_scene_gltf2/blender/exp/gltf2_blender_gather_animation_samplers.py | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/io_scene_gltf2/__init__.py b/io_scene_gltf2/__init__.py index 5e3dce0f..cbd3bee2 100755 --- a/io_scene_gltf2/__init__.py +++ b/io_scene_gltf2/__init__.py @@ -4,7 +4,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": (3, 2, 39), + "version": (3, 2, 40), 'blender': (3, 1, 0), 'location': 'File > Import-Export', 'description': 'Import-Export as glTF 2.0', diff --git a/io_scene_gltf2/blender/exp/gltf2_blender_gather_animation_samplers.py b/io_scene_gltf2/blender/exp/gltf2_blender_gather_animation_samplers.py index 143fccea..1ee98a29 100755 --- a/io_scene_gltf2/blender/exp/gltf2_blender_gather_animation_samplers.py +++ b/io_scene_gltf2/blender/exp/gltf2_blender_gather_animation_samplers.py @@ -391,8 +391,9 @@ def __gather_output(channels: typing.Tuple[bpy.types.FCurve], parent_uuid = export_settings['vtree'].nodes[export_settings['vtree'].nodes[blender_obj_uuid].bones[bone.name]].parent_uuid if parent_uuid is not None and export_settings['vtree'].nodes[parent_uuid].blender_type == VExportNode.BONE: # export bone is not at root of armature neither + blender_bone_parent = export_settings['vtree'].nodes[parent_uuid].blender_bone correction_matrix_local = ( - bone.parent.bone.matrix_local.inverted_safe() @ + blender_bone_parent.bone.matrix_local.inverted_safe() @ bone.bone.matrix_local ) else: -- cgit v1.2.3