Unity3D制作2D精灵动画
原创
©著作权归作者所有:来自51CTO博客作者生活在他方的原创作品,请联系作者获取转载授权,否则将追究法律责任
首先导入图片,我自己做了个简单的图片。
图片导入unity3d,修改sprite model,点击 sprite editor。
如果,图片中的各个元素距离比较开,可以用Slice自动划分。如果不行的话,手动划分下,然后点击Apply确定。这样就吧一副大图片上的各个元素分开了。
新建一个GameObject,在里面添加子GameObject,并添加Sprite Renderer。把整个动画基本的拼出来。
选中根节点,然后打开Animation窗口
点击播放按钮下的那个按钮,点击create new clip,在新打开的窗口,选择保存路径和名称,保存
点击录制按钮,把红线拖到后面的关键时间处
这个时候,拖动Scene里面的对象,就会自动生成关键帧。
动画动作完成后,打开animator窗口,设置默认动画
在左边设置变量
设置动画间的跳转,跳转的变量值
在根的GameObject上,添加脚本
using UnityEngine;
using System.Collections;
public class Ainm : MonoBehaviour {
private Animator anim;
// Use this for initialization
void Start () {
anim = this.GetComponent<Animator> ();
}
// Update is called once per frame
void Update () {
if (Input.GetKeyDown (KeyCode.RightArrow)) {
anim.SetInteger ("manact", 1);
} else if (Input.GetKeyUp (KeyCode.RightArrow)) {
anim.SetInteger ("manact", 0);
} else if (Input.GetKeyDown (KeyCode.LeftArrow)) {
anim.SetInteger ("manact", 2);
}else if(Input.GetKeyUp(KeyCode.LeftArrow)){
anim.SetInteger ("manact", 0);
}
}
}
于是,完成。