在Unity中完成動畫的正反播放代碼。本站提示廣大學習愛好者:(在Unity中完成動畫的正反播放代碼)文章只能為提供參考,不一定能成為您想要的結果。以下是在Unity中完成動畫的正反播放代碼正文
using UnityEngine;
using System.Collections;
public class AnimationAntiSowing : MonoBehaviour {
public static AnimationAntiSowing _initialise;
void Awake()
{
_initialise = this;
}
/// <summary>
/// 動畫停止正反播放
/// </summary>
/// <param name="gameObject">須要播放動畫的物體</param>
/// <param name="isZhengOrFan">動畫的播放狀況</param>
/// <param name="animation">動畫狀況</param>
/// <returns></returns>
public bool isPositiveAndNegativePlay(GameObject gameObject,bool isZhengOrFan,AnimationState animation)
{
//斷定傳入的動畫的播放狀況
//----傳入的狀況為true時,表現正常播放
//----傳入的狀況為false時,表現動畫播放完,可以停止反向播放
if(!isZhengOrFan)
{
//當沒有播放動畫的時刻,播放動畫
if(!gameObject.animation.isPlaying)
{
gameObject.animation.Play();
//-----轉變動畫的播放狀況-----
//動畫確當前時光置為初始
animation.time = 0f;
//動畫的播放速度為正常速度
animation.speed = 1.0f;
//轉變傳入的bool變量的值
isZhengOrFan = true;
}
}
else
{
//當沒有播放動畫的時刻,播放動畫
if (!gameObject.animation.isPlaying)
{
gameObject.animation.Play();
//-----轉變動畫的播放狀況-----
//動畫確當前時光置為動畫的時長
animation.time = animation.length;
//向後走,即動畫停止反向播放,從起點向終點播放
animation.speed = -1.0f;
//轉變傳入的bool變量的值
isZhengOrFan = false;
}
}
return isZhengOrFan;
}
}
以上就是本文分享的全體內容了,願望年夜家可以或許愛好。