我們有時候會在協(xié)程中等待動畫播放完畢,再去執(zhí)行下一步的操作,但是由于不知道動畫的播放時長,每次都要去看動畫然后默數(shù)秒數(shù)(PS:作者以前是這樣做的)。終于突發(fā)奇想我為什么不能直接獲取動畫的時長呢?文章來源:http://www.zghlxwxcb.cn/news/detail-703059.html
下面直接上代碼文章來源地址http://www.zghlxwxcb.cn/news/detail-703059.html
/// <summary>
/// 獲取animator的時間,注意是Animator!!!!
/// </summary>
/// <param name="animator"></param>
/// <param name="animator_Name">動畫的名字</param>
/// <returns></returns>
private float ReturnAnimatorTimer(Animator animator,string animator_Name)
{
float length = 0;
AnimationClip[] clips = animator.runtimeAnimatorController.animationClips;
foreach (AnimationClip clip in clips)
{
if (clip.name.Equals(animator_Name))
{
length = clip.length;
break;
}
}
return length;
}
/// <summary>
/// 獲取animation的時間,注意是Animation!!!!
/// </summary>
/// <param name="animation"></param>
/// <param name="animation_Name">動畫的名字</param>
/// <returns></returns>
private float ReturnAnimationTimer(Animation animation,string animation_Name)
{
float length = 0;
AnimationClip animationClip = animation.GetClip(animation_Name);
length = animationClip.length;
return length;
}
到了這里,關(guān)于Unity獲取Animation和Animator的時長的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!