1
0
Fork 0

Fix forward_vector scale to handle safe_margin in LookAtModifier

This commit is contained in:
Silc Lizard (Tokage) Renew 2024-11-24 13:43:07 +09:00
parent f952bfe998
commit 27bd7b23f6
1 changed files with 1 additions and 1 deletions

View File

@ -486,7 +486,7 @@ void LookAtModifier3D::_process_modification() {
} else { } else {
origin_tr = bone_rest_space; origin_tr = bone_rest_space;
} }
forward_vector = bone_rest_space.basis.xform_inv((target->get_global_position() - origin_tr.translated_local(origin_offset).origin)); forward_vector = bone_rest_space.orthonormalized().basis.xform_inv((target->get_global_position() - origin_tr.translated_local(origin_offset).origin));
forward_vector_nrm = forward_vector.normalized(); forward_vector_nrm = forward_vector.normalized();
if (forward_vector_nrm.abs().is_equal_approx(get_vector_from_axis(primary_rotation_axis))) { if (forward_vector_nrm.abs().is_equal_approx(get_vector_from_axis(primary_rotation_axis))) {
destination = skeleton->get_bone_pose_rotation(bone); destination = skeleton->get_bone_pose_rotation(bone);