//動畫名稱
public const string ANIM_NAME = "Take 001";
//模型對象
public GameObject obj = null;
//進度條
public float hSliderValue = 0.0f;
public float animLegth = 0.0f;
void Start()
{
//得到模型動畫
//obj = GameObject.Find("man");
//得到動畫播放長度
animLegth = obj.animation.animation[ANIM_NAME].length;
}
void OnGUI()
{
//顯示信息
string show = "CurrentAnimationLength" + hSliderValue.ToString() + "(s)" + "/" + animLegth.ToString() + "(s)";
GUILayout.Label(show);
//計算拖動條拖動數值
hSliderValue = GUILayout.HorizontalSlider(hSliderValue, 0.0f, 5.0f, GUILayout.Width(200));
//繪製動畫幀
PlaysilderAnimation(obj, hSliderValue);
}
public void PlaysilderAnimation(GameObject manObject, float times)
{
//播放動畫
if(!manObject.animation.isPlaying)
{
// manObject.animation.Play(ANIM_NAME);
manObject.animation.Play(ANIM_NAME);
}
//設置動畫時間
manObject.animation.animation[ANIM_NAME].time = times;
}
這樣比較方便。