动画的播放控制
选中怪物,点击Avtar中的资源
在Asset资源目录下的模型
动画类型为泛型
工程目录下鼠标右键创建动画控制器
找到下面的动画拖到Entry中
添加动画参数类型Int,Id
选中到Ready的箭头,右侧添加条件Id==1;
为怪物添加动画组件,指定动画控制器,指定模型的Avatar
添加脚本AnimatorMgr脚本
using UnityEngine;
public class AnimatorMgr : MonoBehaviour
{
Animator am;
void Start()
{
am = transform.GetComponent<Animator>();
}
// Update is called once per frame
void Update()
{
if (Input.GetKeyDown(KeyCode.Alpha0))
{
am.SetBool("Run", false);
am.SetInteger("Id", 0);
}
else if (Input.GetKeyDown(KeyCode.Alpha1))
{
//am.SetInteger("Id", 1);
//am.SetBool("Run", true);
//Trigger只会触发一次
am.SetTrigger("RunTrigger");
}
else if (Input.GetKeyDown(KeyCode.Alpha2))
{
am.SetBool("Run", false);
am.SetInteger("Id", 2);
}
else if (Input.GetKeyDown(KeyCode.Alpha3))
{
am.SetBool("Run", false);
am.SetInteger("Id", 3);
}
else if (Input.GetKeyDown(KeyCode.Alpha4))
{
am.SetBool("Run", false);
am.SetInteger("Id", 4);
}
}
}
把过渡到自己选项取消掉
设置动画的循环
等上一个动画播放完再切到当前动画
人形动画
点Configure
可以查看骨骼的绑定
动画遮罩
可以实现便移动边攻击的动画,移动是一个动画屏蔽上半身的动作,攻击是一个动画屏蔽腿上的动作
在资源中鼠标右键点击创建动画遮罩
选中两条腿变为红色,两条腿就没动画了。
Attack
Run
这俩动画控制器中都有个状态id为1的动画,播放状态为1的动画,即可实现先半身奔跑,上本身攻击的动作。(注意遮罩的权重设为1)
动画分层和退出控制
退出
Id为1为奔跑,技能的转奔跑都设置退出动画id=1
注意两点,层级的权重都为1
动画有没有退出事件
动画事件
找到动画
脚本挂对象上
动画运行到某一帧执行的方法名