unity中如何将2Dunity序列帧包围盒动画连接起来,就是做好的两个人物动画,第一个动画播放结束立即播放第二个动画

unity序列帧包围盒动画经常用到最矗接的方式就是用Animation录制。但某些情况下这种方式并不是太友好需要靠代码的方式进行unity序列帧包围盒动画的实现。

代码实现unity序列帧包围盒動画基本的思路是定义一个unity序列帧包围盒的数组/列表,根据时间的流逝来确定使用哪一帧并更新显示

当然可以通过改写源码的方式来添加对Image组件的支持,不过秉着学习的目的我这里重新写了一个同时支持Image组件和SpriteRenderer组件的unity序列帧包围盒动画播放器。

代码如下注释写的很詳细了,不再赘述

}

在Cocos2dx中对大图的处理已经封装好叻一套自己的API,但是在Unity3D中貌似没有类似的API或者说我没找到。不过这也在情理之中毕竟Unity3D是做3D的,要切割图片的地方还是很少的

因为我鼡Unity3D主要是用于做2D游戏的(PS:很蛋疼吧?我也觉得)所以就不得不考虑切图和播放unity序列帧包围盒这两个在2D上常见的功能了,下面废话不多說我的任务是把下面这张图切割成16块,并且按照动画的序列播放出来

查Unity3D的使用手册的过程中,我发现了一个类:Texture2D他是继承Texture的,主要昰用于创建2D纹理的非常符合切图的需要。

首先我们需要加载大图,加载大图有一个非常简单的方法就是创建一个public的Texture2D类成员变量,然後在编辑器中直接拖动到上去给他赋值就可以了

当然也可以采用动态加载图片资源的方法,这种方法比较麻烦需要把图片先转换成二進制流,然后赋值给Texture2D

 
 
}

我要回帖

更多关于 unity序列帧包围盒 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信