unity 滑動條控制動畫播放代碼

有時候需要用到滑動條來控制,動畫的播放,
//動畫名稱  
  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;  
  }  

這樣比較方便。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章