Fix : 보정 계산법 업데이트

This commit is contained in:
qsxft258@gmail.com 2025-12-24 21:47:06 +09:00
parent 649debd3e7
commit b6238e41d4

View File

@ -292,29 +292,17 @@ public class UnityRecieve_FACEMOTION3D_and_iFacialMocap : MonoBehaviour
}
// 세로/가로 방향에 따른 BlendShape 보정 비율 적용
// 곡선 보정으로 0~100 범위를 유지하면서 민감도 조절
float ApplyScaleCorrection(string normalizedName, float weight)
{
float scale = 1.0f;
if (VerticalBlendShapes.Contains(normalizedName))
{
scale = verticalScale;
return Mathf.Min(weight * verticalScale, 100f);
}
else if (HorizontalBlendShapes.Contains(normalizedName))
{
scale = horizontalScale;
return Mathf.Min(weight * horizontalScale, 100f);
}
if (Mathf.Approximately(scale, 1.0f))
return weight;
// 0~100 범위 유지하면서 곡선 보정
// scale > 1: 작은 입력에서 더 빠르게 반응 (눌린 화면 보정)
// scale < 1: 작은 입력에서 더 느리게 반응
float normalized = weight / 100f;
float corrected = Mathf.Pow(normalized, 1f / scale);
return corrected * 100f;
return weight;
}
// BlendShape 이름 정규화 함수