summaryrefslogtreecommitdiff
path: root/scene/3d
diff options
context:
space:
mode:
authorSilc Renew <tokage.it.lab@gmail.com>2022-07-05 14:04:17 +0900
committerSilc Renew <tokage.it.lab@gmail.com>2022-07-16 19:53:11 +0900
commitf3af3aedfe7ed72ecf6671439ebe00e03f86ed8c (patch)
tree9c044932b62a2c1d07e09b19c2896e5641c56ea6 /scene/3d
parent9904a9db5a90f2f1896b6b7e1603ca2dd2745bad (diff)
add rest fixer to importer retarget
Diffstat (limited to 'scene/3d')
-rw-r--r--scene/3d/skeleton_3d.cpp4
1 files changed, 1 insertions, 3 deletions
diff --git a/scene/3d/skeleton_3d.cpp b/scene/3d/skeleton_3d.cpp
index fbd5f31dd5..b342660b85 100644
--- a/scene/3d/skeleton_3d.cpp
+++ b/scene/3d/skeleton_3d.cpp
@@ -639,6 +639,7 @@ void Skeleton3D::remove_bone_child(int p_bone, int p_child) {
}
Vector<int> Skeleton3D::get_parentless_bones() {
+ _update_process_order();
return parentless_bones;
}
@@ -765,8 +766,6 @@ void Skeleton3D::_make_dirty() {
}
void Skeleton3D::localize_rests() {
- _update_process_order();
-
Vector<int> bones_to_process = get_parentless_bones();
while (bones_to_process.size() > 0) {
int current_bone_idx = bones_to_process[0];
@@ -958,7 +957,6 @@ Ref<Skin> Skeleton3D::create_skin_from_rest_transforms() {
skin.instantiate();
skin->set_bind_count(bones.size());
- _update_process_order(); // Just in case.
// Pose changed, rebuild cache of inverses.
const Bone *bonesptr = bones.ptr();