sprite动画编辑及动画事件

这一节给大家介绍下unity2D里的动画编辑及动画事件,和unity3D一样,unity2d的Sprite也有animation。我们可以再animation上修改我们的Position,rotation以及scale属性来达到自己想要的动画效果。

1、我们先用单一的一个Sprite做一下移动,选择,缩放的动画效果,在window菜单下打开你的animation窗口,然后我们把一个swan拖到场景中,然后我们在animation窗口里点击Add Curve,会弹出一个窗口让我们去保存anim文件。保存完你可以看到多出了两个文件,一个是clip文件,一个是animator controler文件。

下面我们来操作animations,点击Add Curve(记住选中你的Sprite)。我们可以看到在右边出来一个框,里面有些信息,我们可以通过右边的添加你所需要的属性.

我们来熟悉一下这个界面。左边是我们添加的属性的状态,右边简单来说是一个时间轴,以秒为单位的,初始时间是1秒,时间轴下面框出来的是我们的帧(key)。初始化给我们是有两帧(开始帧和结束帧)。在左上角的是播放按钮,当前你点击播放Sprite是没有任何反应的,不过你可以看到时间轴的帧在动。那是因为我们的Sprite的开始和结束点都是一样的。我们可以鼠标点击到结束帧那里(红线显示在结束帧的位置)。然后我们拖动Sprite到

任何一个地方,我们可以在animation窗口的右边观察到我们的Position是发生了变化的。然后再点击播放可以看到Sprite从开始点到结束点移动过去了。

一开始可能会感觉到Sprite移动的很快,那是因为我们的时间至少1秒钟,你可以拖动结束帧的位置把动画延长(鼠标点住帧拖动就可以了)。同样的,要修改rotation,scale也是通过这样的方法。当然你也可以直接修改数值来移动。

要添加帧,可以再你需要添加帧的时间点上右击,点Add key。

单一的Sprite移动感觉有点生硬。没关系,我们可以把我们之前做好的swan天鹅序列帧动画Sprite都添加到animation上去。怎么弄呢?

在assets上选中所有的Sprite。依然是拖动到场景中,然后会出现提示保存文件。保存完选中场景中的Sprite,我们可以在animation窗口看到如下图的情况。

直接点播放大家可以看到我们的天鹅在飞翔,哈哈哈,是不是很方便啊。同时,你会看到,动画里的每一帧就是你添加上去的每一个Sprite帧序列。如果你想要这个天鹅能够飞向远方并且旋转并且缩小放大的话。可以按照上面添加Position属性那样添加Position,rotation和scale。

添加动画事件

接下来看下怎么给我们的动画添加动画事件,在animation界面里你要在哪一帧去添加事件处理函数,你就在那一帧右击会显示Add Animation Event。添加成功会出现一个白色的条。因为当前是没有任何函数的,所以你双击进去那个(或者点着那个白条右击)Edit Animation Event是发现没有函数。

那么要如何添加函数处理呢,很简单,我们给Sprite添加一个脚本,在脚本上写函数,如图。写完再回到Edit Animation Event里面我们可以看到有显示出Tests函数,选择函数。然后运行我们的项目我们就可以看到在console有输出我们想要大于的信息。