From b1571c0dc948419f8d529029824da16e5d5d8845 Mon Sep 17 00:00:00 2001 From: Epicalert Date: Sun, 4 Jul 2021 03:35:31 +0800 Subject: [PATCH] Fix extreme eye movement when face is scaled small Offset needs to be multiplied by scale, otherwise the effect will be disproportionately pronounced when the face is scaled down. --- src/modelpart.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modelpart.cpp b/src/modelpart.cpp index 7073771..e9340f8 100644 --- a/src/modelpart.cpp +++ b/src/modelpart.cpp @@ -83,7 +83,7 @@ void ModelPart::processFaceData(struct FaceData faceData) { glm::vec2 bindPosition = faceData.positions[bind]; glm::vec2 followPosition = faceData.positions[follow]; glm::vec2 followDirection = followPosition - bindPosition; - glm::vec2 offset = faceData.positions[offsetBind] * offsetFactor; + glm::vec2 offset = faceData.positions[offsetBind] * offsetFactor * faceData.scale; glm::vec2 newPosition = bindPosition + offset + (followDirection * factor); smoothTransform(newPosition, faceData.headRotation, faceData.scale);