32 lines
715 B
C#

using UnityEngine;
using Spine.Unity;
namespace Spine.Unity.Examples {
public class RootMotionDeltaCompensation : MonoBehaviour {
protected SkeletonRootMotionBase rootMotion;
public Transform targetPosition;
public int trackIndex = 0;
public bool adjustX = true;
public bool adjustY = true;
void Start () {
rootMotion = this.GetComponent<SkeletonRootMotionBase>();
}
void Update () {
AdjustDelta();
}
void OnDisable () {
rootMotion.rootMotionScaleX = rootMotion.rootMotionScaleY = 1;
}
void AdjustDelta() {
Vector3 toTarget = targetPosition.position - this.transform.position;
rootMotion.AdjustRootMotionToDistance(toTarget, trackIndex, adjustX, adjustY);
}
}
}