1
0
Fork 0

Merge pull request #101311 from TokageItLab/fix-lookat-rest

Fix `LookAtModifier3D` rest space incorrect rotation
This commit is contained in:
Rémi Verschelde 2025-01-09 00:42:29 +01:00
commit f83919c088
1 changed files with 4 additions and 2 deletions

View File

@ -501,9 +501,11 @@ void LookAtModifier3D::_process_modification() {
Transform3D bone_rest_space;
int parent_bone = skeleton->get_bone_parent(bone);
if (parent_bone < 0) {
bone_rest_space = skeleton->get_global_transform() * skeleton->get_bone_rest(bone);
bone_rest_space = skeleton->get_global_transform();
bone_rest_space.origin += skeleton->get_bone_rest(bone).origin;
} else {
bone_rest_space = skeleton->get_global_transform() * skeleton->get_bone_global_pose(parent_bone) * skeleton->get_bone_rest(bone);
bone_rest_space = skeleton->get_global_transform() * skeleton->get_bone_global_pose(parent_bone);
bone_rest_space.origin += skeleton->get_bone_rest(bone).origin;
}
// Calculate forward_vector and destination.