这个例子介绍 spine对象
重要构成组件 SkeletonAnimation ,而它需要SkeletonData
这里实现了一段眨眼睛的功能
初步介绍了动画的第一种用法 用AnimationState.SetAnimation 播放动画
以及隔几秒就来一次的方法
以前没用过 IEnumerator Start这种方式 ,还可以这样啊
IEnumerator Start(){
while (true) {
skeletonAnimation.AnimationState.SetAnimation(轨道编号, 动画名, false);
yield return new WaitForSeconds(Random.Range(minimumDelay, maximumDelay));
}
}
这里有一个潜在的知识点
用的是 AnimationReferenceAsset 类型动画
一般spine导出来的动画信息都在 xxx.atlas.txt文件里
放进unity中被生成 xxx_atlas.asset 文件引用
再被生成的xxx_SkeletonData.asset文件引用
在xxx_SkeletonData.asset中的 preview 可将内嵌的动画导出单个动画
这里就是调用的单个动画
using UnityEngine;
using System.Collections;
using Spine.Unity;
namespace Spine.Unity.Examples {
public class SpineBlinkPlayer : MonoBehaviour {
const int BlinkTrack = 1;
public AnimationReferenceAsset blinkAnimation;
public float minimumDelay = 0.15f;
public float maximumDelay = 3f;
IEnumerator Start () {
var skeletonAnimation = GetComponent<SkeletonAnimation>();
if (skeletonAnimation == null) yield break;
while (true) {
skeletonAnimation.AnimationState.SetAnimation(SpineBlinkPlayer.BlinkTrack, blinkAnimation, false);
yield return new WaitForSeconds(Random.Range(minimumDelay, maximumDelay));
}
}
}
}