導(dǎo)入
1.拿到的動(dòng)畫文件有三個(gè)
fileName.altas // 圖集的坐標(biāo)文件
fileName.json // 動(dòng)畫數(shù)據(jù)
fileName.png // 圖片
因?yàn)?unity 引擎不識(shí)別 .altas
文件后綴纤房,所以我們需要把文件改成fileName.altas.txt
補(bǔ)充: spine 可以直接設(shè)置后綴名稱為 .altas.txt 2018.1.4
2.接下來下載 spine 的 unity 支持
github: spine-runtime, 將下載內(nèi)容中的 spine-csharp
和 spine-unity
兩個(gè)文件夾導(dǎo)入到unity
3.將三個(gè)動(dòng)畫文件導(dǎo)入到unity中肮塞,unity-runtime 會(huì)另外生成3個(gè)文件
4.創(chuàng)建動(dòng)畫
在Hierarchy
面板中單擊右鍵,選擇 spine
- SkeletonAnimation
, 如果在UI(Canvas)中創(chuàng)建動(dòng)畫請(qǐng)選擇 spine
- SkeletonGraphic
將自動(dòng)生成的
fileName_SkeletonData
拖拽到 SkeletonAnimation 組件的 SkeletonData Asset 屬性上楞黄。然后選擇AnimationName 屬性中選擇對(duì)應(yīng)動(dòng)畫,運(yùn)行即可播放。
腳本控制
用腳本控制動(dòng)畫播放
using Spine.Unity;
using UnityEngine;
public class SpineAniController {
SkeletonAnimation ani;
SkeletonGraphic gph;
public void Play (string aniName) {
ani = ani ?? gameObject.GetComponent<SkeletonAnimation>();
gph = gph ?? gameObject.GetComponent<SkeletonGraphic>();
ani.state.SetAnimation(0, aniName, false);
gph.AnimationState.SetAnimation(0, aniName, false);
}
public void PlayExample () {
Play("chi");
Play("peng");
}
}