UGUI中点击按钮实现animation动画由animator动画控制机播放、停止和倒放的代码
时间: 2023-12-10 21:42:49 浏览: 91
以下是一个简单的示例代码,可以实现UGUI中点击按钮来控制Animator播放/暂停/倒放动画:
```csharp
using UnityEngine;
using UnityEngine.UI;
public class ButtonAnimatorController : MonoBehaviour
{
public Animator animator;
public Button playButton;
public Button pauseButton;
public Button rewindButton;
void Start()
{
// 给按钮添加点击事件
playButton.onClick.AddListener(PlayAnimation);
pauseButton.onClick.AddListener(PauseAnimation);
rewindButton.onClick.AddListener(RewindAnimation);
}
void PlayAnimation()
{
animator.speed = 1f; // 设置动画速度为正常速度
animator.enabled = true; // 启用动画控制器
}
void PauseAnimation()
{
animator.speed = 0f; // 设置动画速度为0,暂停动画
animator.enabled = false; // 禁用动画控制器
}
void RewindAnimation()
{
animator.speed = -1f; // 设置动画速度为负数,倒放动画
animator.enabled = true; // 启用动画控制器
}
}
```
在以上代码中,我们首先在Start()方法中给三个按钮分别添加了点击事件。然后在PlayAnimation()方法中,我们将动画速度设置为正常速度(1f),并启用动画控制器。在PauseAnimation()方法中,我们将动画速度设置为0f,暂停动画,并禁用动画控制器。在RewindAnimation()方法中,我们将动画速度设置为负数(-1f),倒放动画,并启用动画控制器。这样就实现了通过UGUI按钮来控制Animator播放/暂停/倒放动画的功能。
阅读全文