unity动画状态机

动画状态机

首先导入下好的模型unity动画状态机_第1张图片
随便导入一个模型拖入平面里。unity动画状态机_第2张图片
然后新建一个Animation controller,起个名字打开,
unity动画状态机_第3张图片
第一步在素材里找个待机动画拖入,作为初始动作,
第二步找个跑动的动作拖入,作为按W后的动作,

unity动画状态机_第4张图片
unity动画状态机_第5张图片
分别点击stand以及run动画,点击Make Transition,吧stand与run连线,然后再反过来连回来,如图。
unity动画状态机_第6张图片
然后点击两条线修改右边的属性,
stand过渡到rununity动画状态机_第7张图片
unity动画状态机_第8张图片
run过渡到stand
unity动画状态机_第9张图片
unity动画状态机_第10张图片
然后创建c#代码

public class animator : MonoBehaviour {
	private Animator ani;
	// Use this for initialization
	void Start () {
		ani = transform.GetComponent<Animator>();
	}
	
	// Update is called once per frame
	void Update () {
		//transform.Translate(Vector3.forward * 2 * Time.deltaTime);
		//站立动画
		if (Input.GetKeyDown(KeyCode.W))
		{
			ani.SetBool("run", true);
		}
		//行走动画
		if (Input.GetKeyUp(KeyCode.W))
		{
			ani.SetBool("run", false);
		}
 }
}

然后把代码拖给人物模型
把创好的动画拖给人物模型
unity动画状态机_第11张图片

对了,前面少了一步就是让动画循环播放,勾选Loop Time
在这里插入图片描述
然后就可以了。

下边是成品:

你可能感兴趣的:(动画,unity3d,unity)