一、创建角色动画
1、在项目文件夹中右键创建动画控制器Player及动画PlayerRightIdle:
2、勾选PlayerRightIdle的循环时间和循环动作:
3、双击打开动画控制器Player并将PlayerRightIdle拖入动画控制器中:
4、从顶上菜单栏选择“窗口-动画-动画”:
5、将动画控制器Player拖入挂载到对象Player上:
6、点击层级中的Player对象,然后将需要的PlayerRightIdle动画图片拖到动画中:
7、根据自己想要的动画效果调节动画图片时间间隔:
8、点击这里可以创建新剪辑,制作动画的流程如上述:
二、动画控制代码(Player.cs中)
将PlayerLeftWalk,PlayerLeftIdle,PlayerRightIdle,PlayerRightWalk动画都按照上述步骤做好后,给角色Player对象添加代码:
using UnityEngine;
public class Player : MonoBehaviour
{
public Animator Animator;
private void Awake()
{
// 获取动画组件
Animator = GetComponent<Animator>();
}
void Update()
{
// 根据角色操作判断使用动画
if (horizontalInput == 0 && verticalInput == 0)
{
if (Animator.GetCurrentAnimatorStateInfo(0).IsName("PlayerRightWalk"))
{
Animator.Play("PlayerRightIdle");
}
else if (Animator.GetCurrentAnimatorStateInfo(0).IsName("PlayerLeftWalk"))
{
Animator.Play("PlayerLeftIdle");
}
}
else
{
if (horizontalInput >= 0)
{
Animator.Play("PlayerRightWalk");
}
else
{
Animator.Play("PlayerLeftWalk");
}
}
}
}