Unity 2D游戏开发中制作帧动画
发表于2018-05-31
Unity自带的动画系统是可以制作2D帧动画的,考虑到有些人可能没有掌握,所以这里就分享两种在2D游戏开发中制作帧动画的方法。







方法一、用代码控制
先创建一个2D工程。导入图片资源,并设置texture的texturetype为sprite,看下图:

1.拖一张背景图进去,再拖一张人物的Sprite进去

制作精灵帧动画,其实就是改变上图中方框1的SpriteRenderer的Sprite的参数;方框2是精灵所在的层级关系。
2.在精灵image75添加一个脚本donghua.cs
using UnityEngine;
using System.Collections;
public class donghua : MonoBehaviour {
public Sprite[] Sprites;
public float speed;
private SpriteRenderer spriterenderer;
void Start () {
spriterenderer = GetComponent<SpriteRenderer>();
}
void Update () {
int index = (int)(Time.time * speed) % Sprites.Length;
spriterenderer.sprite = Sprites[index];
}
}

脚本编辑完成后,把要制作成动画的图片拖进数组中,speed控制速度。
方法二、用unity自带的Animator组件控制帧动画的播放
1.选中多张贴图拖入场景,会弹出保存帧动画的对话框。


2.输入动画的名字保存后会生成两个文件,一个帧动画文件,一个动画状态机文件,双击打开红框动画状态机文件。

3.打开红框动画状态机文件后,单击go动画,可以在Inspector界面设置动画播放的速度。

然后就大功告成了,单击运行,看看动画效果吧。
下图中,右边的小人动画是第一种方法实现的,左边的小人动画是第二种方法实现的。

