Unity 2D游戏开发中制作帧动画

发表于2018-05-31
评论0 1.17w浏览
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界面设置动画播放的速度。

然后就大功告成了,单击运行,看看动画效果吧。

下图中,右边的小人动画是第一种方法实现的,左边的小人动画是第二种方法实现的。

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引