From f00048fa79404e78c7a651a87897057ddc819ffa Mon Sep 17 00:00:00 2001 From: "Silc Lizard (Tokage) Renew" <61938263+TokageItLab@users.noreply.github.com> Date: Sun, 16 Mar 2025 15:16:39 +0900 Subject: [PATCH] Fix rest translation space in LookAtModifier3D (cherry picked from commit 78fbe37f4b035a63549c5fa9adce5c3a0f1037a0) --- scene/3d/look_at_modifier_3d.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scene/3d/look_at_modifier_3d.cpp b/scene/3d/look_at_modifier_3d.cpp index 24a9e6fec01..1046cb67061 100644 --- a/scene/3d/look_at_modifier_3d.cpp +++ b/scene/3d/look_at_modifier_3d.cpp @@ -502,10 +502,10 @@ void LookAtModifier3D::_process_modification() { int parent_bone = skeleton->get_bone_parent(bone); if (parent_bone < 0) { bone_rest_space = skeleton->get_global_transform(); - bone_rest_space.origin += skeleton->get_bone_rest(bone).origin; + bone_rest_space.translate_local(skeleton->get_bone_rest(bone).origin); } else { bone_rest_space = skeleton->get_global_transform() * skeleton->get_bone_global_pose(parent_bone); - bone_rest_space.origin += skeleton->get_bone_rest(bone).origin; + bone_rest_space.translate_local(skeleton->get_bone_rest(bone).origin); } // Calculate forward_vector and destination.