unity 中 ,animation动画进行播放以及倒着播放和动画只执行一帧的方法
//动画正播和倒播
void Start () {
Ani = GetComponent<Animation>();
}
// Update is called once per frame
void Update () {
if (Input.GetKeyDown(KeyCode.W))
{
ReversePlay();
}
if (Input.GetKeyDown(KeyCode.S))
{
NormalPlay();
}
if (Input.GetKeyDown(KeyCode.Space))
{
StayInAFrame(0.5f);
}
}
//正播
void NormalPlay()
{
Ani["动画的名字"].time = Ani["动画的名字"].clip.length;
Ani["动画的名字"].speed = -1.0f;
Ani.CrossFade("动画的名字");
}
//倒播
void ReversePlay()
{
Ani["动画的名字"].time = 0;
Ani["动画的名字"].speed = 1.0f;
Ani.CrossFade("动画的名字");
}
//停止在某一帧
void StayInAFrame(float timer)
{
//设置停止在哪一帧
Ani["动画的名字"].time = timer;
Ani["动画的名字"].speed = 0f;
Ani.CrossFade("动画的名字");
}