Unity2019_动画系统

动画的播放控制

选中怪物,点击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

 动画有没有退出事件

动画事件

找到动画

 

脚本挂对象上

 动画运行到某一帧执行的方法名

 

猜你喜欢

转载自blog.csdn.net/qq_35647121/article/details/123389977