Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xio_scene_gltf2/blender/imp/gltf2_blender_animation_bone.py3
-rwxr-xr-xio_scene_gltf2/blender/imp/gltf2_blender_animation_node.py3
2 files changed, 6 insertions, 0 deletions
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 c568db22..f5fbd7b9 100755
--- a/io_scene_gltf2/blender/imp/gltf2_blender_animation_bone.py
+++ b/io_scene_gltf2/blender/imp/gltf2_blender_animation_bone.py
@@ -34,6 +34,8 @@ class BlenderBoneAnim():
kf.interpolation = 'CONSTANT'
elif interpolation == "CUBICSPLINE":
kf.interpolation = 'BEZIER'
+ kf.handle_right_type = 'AUTO'
+ kf.handle_left_type = 'AUTO'
else:
kf.interpolation = 'LINEAR'
@@ -205,6 +207,7 @@ class BlenderBoneAnim():
# Setting interpolation
for kf in fcurve.keyframe_points:
BlenderBoneAnim.set_interpolation(interpolation, kf)
+ fcurve.update() # force updating tangents (this may change when tangent will be managed)
@staticmethod
def anim(gltf, anim_idx, node_idx):
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 0be98a06..4cb66299 100755
--- a/io_scene_gltf2/blender/imp/gltf2_blender_animation_node.py
+++ b/io_scene_gltf2/blender/imp/gltf2_blender_animation_node.py
@@ -34,6 +34,8 @@ class BlenderNodeAnim():
kf.interpolation = 'CONSTANT'
elif interpolation == "CUBICSPLINE":
kf.interpolation = 'BEZIER'
+ kf.handle_right_type = 'AUTO'
+ kf.handle_left_type = 'AUTO'
else:
kf.interpolation = 'LINEAR'
@@ -128,6 +130,7 @@ class BlenderNodeAnim():
# Setting interpolation
for kf in fcurve.keyframe_points:
BlenderNodeAnim.set_interpolation(animation.samplers[channel.sampler].interpolation, kf)
+ fcurve.update() # force updating tangents (this may change when tangent will be managed)
elif channel.target.path == 'weights':