您的位置:首页 > 移动开发 > Unity3D

在Unity中实现动画的正反播放代码

2015-03-17 15:13 1576 查看
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;
}
}

以上就是本文分享的全部内容了,希望大家能够喜欢。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Unity 动画 正反播放