diff options
author | Silc Renew <tokage.it.lab@gmail.com> | 2023-02-21 11:26:23 +0900 |
---|---|---|
committer | Silc Lizard (Tokage) Renew <61938263+TokageItLab@users.noreply.github.com> | 2023-04-25 01:45:14 +0900 |
commit | fac8a918f97e831de6070377e7f3475071d4ed84 (patch) | |
tree | aa592b2fb0aec86657ee0b5acd92de35a21fb563 /editor/import/resource_importer_scene.cpp | |
parent | 14c582bca81046fdde35e16088ddfd5df0136d56 (diff) | |
download | redot-engine-fac8a918f97e831de6070377e7f3475071d4ed84.tar.gz |
Expose interpolation methods for 3D track in Animation class
Diffstat (limited to 'editor/import/resource_importer_scene.cpp')
-rw-r--r-- | editor/import/resource_importer_scene.cpp | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/editor/import/resource_importer_scene.cpp b/editor/import/resource_importer_scene.cpp index c052f92508..15bb504d8d 100644 --- a/editor/import/resource_importer_scene.cpp +++ b/editor/import/resource_importer_scene.cpp @@ -1455,22 +1455,22 @@ void ResourceImporterScene::_create_slices(AnimationPlayer *ap, Ref<Animation> a if (kt > (from + 0.01) && k > 0) { if (anim->track_get_type(j) == Animation::TYPE_POSITION_3D) { Vector3 p; - anim->position_track_interpolate(j, from, &p); + anim->try_position_track_interpolate(j, from, &p); new_anim->position_track_insert_key(dtrack, 0, p); } else if (anim->track_get_type(j) == Animation::TYPE_ROTATION_3D) { Quaternion r; - anim->rotation_track_interpolate(j, from, &r); + anim->try_rotation_track_interpolate(j, from, &r); new_anim->rotation_track_insert_key(dtrack, 0, r); } else if (anim->track_get_type(j) == Animation::TYPE_SCALE_3D) { Vector3 s; - anim->scale_track_interpolate(j, from, &s); + anim->try_scale_track_interpolate(j, from, &s); new_anim->scale_track_insert_key(dtrack, 0, s); } else if (anim->track_get_type(j) == Animation::TYPE_VALUE) { Variant var = anim->value_track_interpolate(j, from); new_anim->track_insert_key(dtrack, 0, var); } else if (anim->track_get_type(j) == Animation::TYPE_BLEND_SHAPE) { float interp; - anim->blend_shape_track_interpolate(j, from, &interp); + anim->try_blend_shape_track_interpolate(j, from, &interp); new_anim->blend_shape_track_insert_key(dtrack, 0, interp); } } @@ -1501,22 +1501,22 @@ void ResourceImporterScene::_create_slices(AnimationPlayer *ap, Ref<Animation> a if (dtrack != -1 && kt >= to) { if (anim->track_get_type(j) == Animation::TYPE_POSITION_3D) { Vector3 p; - anim->position_track_interpolate(j, to, &p); + anim->try_position_track_interpolate(j, to, &p); new_anim->position_track_insert_key(dtrack, to - from, p); } else if (anim->track_get_type(j) == Animation::TYPE_ROTATION_3D) { Quaternion r; - anim->rotation_track_interpolate(j, to, &r); + anim->try_rotation_track_interpolate(j, to, &r); new_anim->rotation_track_insert_key(dtrack, to - from, r); } else if (anim->track_get_type(j) == Animation::TYPE_SCALE_3D) { Vector3 s; - anim->scale_track_interpolate(j, to, &s); + anim->try_scale_track_interpolate(j, to, &s); new_anim->scale_track_insert_key(dtrack, to - from, s); } else if (anim->track_get_type(j) == Animation::TYPE_VALUE) { Variant var = anim->value_track_interpolate(j, to); new_anim->track_insert_key(dtrack, to - from, var); } else if (anim->track_get_type(j) == Animation::TYPE_BLEND_SHAPE) { float interp; - anim->blend_shape_track_interpolate(j, to, &interp); + anim->try_blend_shape_track_interpolate(j, to, &interp); new_anim->blend_shape_track_insert_key(dtrack, to - from, interp); } } @@ -1528,21 +1528,21 @@ void ResourceImporterScene::_create_slices(AnimationPlayer *ap, Ref<Animation> a new_anim->track_set_path(dtrack, anim->track_get_path(j)); if (anim->track_get_type(j) == Animation::TYPE_POSITION_3D) { Vector3 p; - anim->position_track_interpolate(j, from, &p); + anim->try_position_track_interpolate(j, from, &p); new_anim->position_track_insert_key(dtrack, 0, p); - anim->position_track_interpolate(j, to, &p); + anim->try_position_track_interpolate(j, to, &p); new_anim->position_track_insert_key(dtrack, to - from, p); } else if (anim->track_get_type(j) == Animation::TYPE_ROTATION_3D) { Quaternion r; - anim->rotation_track_interpolate(j, from, &r); + anim->try_rotation_track_interpolate(j, from, &r); new_anim->rotation_track_insert_key(dtrack, 0, r); - anim->rotation_track_interpolate(j, to, &r); + anim->try_rotation_track_interpolate(j, to, &r); new_anim->rotation_track_insert_key(dtrack, to - from, r); } else if (anim->track_get_type(j) == Animation::TYPE_SCALE_3D) { Vector3 s; - anim->scale_track_interpolate(j, from, &s); + anim->try_scale_track_interpolate(j, from, &s); new_anim->scale_track_insert_key(dtrack, 0, s); - anim->scale_track_interpolate(j, to, &s); + anim->try_scale_track_interpolate(j, to, &s); new_anim->scale_track_insert_key(dtrack, to - from, s); } else if (anim->track_get_type(j) == Animation::TYPE_VALUE) { Variant var = anim->value_track_interpolate(j, from); @@ -1551,9 +1551,9 @@ void ResourceImporterScene::_create_slices(AnimationPlayer *ap, Ref<Animation> a new_anim->track_insert_key(dtrack, to - from, to_var); } else if (anim->track_get_type(j) == Animation::TYPE_BLEND_SHAPE) { float interp; - anim->blend_shape_track_interpolate(j, from, &interp); + anim->try_blend_shape_track_interpolate(j, from, &interp); new_anim->blend_shape_track_insert_key(dtrack, 0, interp); - anim->blend_shape_track_interpolate(j, to, &interp); + anim->try_blend_shape_track_interpolate(j, to, &interp); new_anim->blend_shape_track_insert_key(dtrack, to - from, interp); } } |