diff --git a/Runtime/HumanoidControl/Scripts/Pose/BonePose.cs b/Runtime/HumanoidControl/Scripts/Pose/BonePose.cs index 57cef19..9ac0f47 100644 --- a/Runtime/HumanoidControl/Scripts/Pose/BonePose.cs +++ b/Runtime/HumanoidControl/Scripts/Pose/BonePose.cs @@ -40,17 +40,18 @@ namespace Passer.Humanoid { HumanoidTarget.TargetedBone referenceBone = humanoid.GetBone(referenceBoneRef.boneId); if (referenceBoneRef.boneId != Bone.None && referenceBone.target.transform != null) { referencePosition = referenceBone.target.transform.position; - referenceRotation = referenceBone.bone.targetRotation; + referenceRotation = referenceBone.target.transform.rotation; //referenceBone.bone.targetRotation; referenceScale = referenceBone.target.transform.lossyScale; } else { - referencePosition = humanoid.transform.position; + referencePosition = targetedBone.TargetBasePosition(); // humanoid.transform.position; referenceRotation = humanoid.transform.rotation; referenceScale = humanoid.transform.lossyScale; } if (setTranslation) - targetedBone.target.transform.position = targetedBone.TargetBasePosition() + Vector3.Lerp(Vector3.zero, referenceRotation * translation, value); + //targetedBone.target.transform.position = targetedBone.TargetBasePosition() + Vector3.Lerp(Vector3.zero, referenceRotation * translation, value); + targetedBone.target.transform.position = referencePosition + Vector3.Lerp(Vector3.zero, referenceRotation * translation, value); if (setRotation) targetedBone.target.transform.rotation = Quaternion.Slerp(targetedBone.TargetBaseRotation(), referenceRotation * rotation, value); if (setScale)