using UnityEngine;
using System.Collections;
[ExecuteInEditMode]
public class SpineAnimationApply : MonoBehaviour {
[SpineAnimation]
public string animationName;
[Range(0,1)]
public float normalizedTime = 0;
SkeletonRenderer skeletonRenderer;
Spine.SkeletonData skeletonData;
Spine.Animation anim;
void OnEnable () {
skeletonRenderer = GetComponent<SkeletonRenderer>();
skeletonData = skeletonRenderer.skeletonDataAsset.GetSkeletonData(true);
anim = skeletonData.FindAnimation(animationName);
}
void Update () {
if (!skeletonRenderer.valid)
return;
if(anim == null || anim.Name != animationName)
anim = skeletonData.FindAnimation(animationName);
if (anim == null)
return;
skeletonRenderer.skeleton.Update(Time.deltaTime);
anim.Apply(skeletonRenderer.skeleton, 0, anim.duration * normalizedTime, false, null);
skeletonRenderer.skeleton.UpdateWorldTransform();
}
}