2dToolKit是一款出色的基于unity3d开发2d游戏的工具,提供了丰富的编辑器工具和教程,是基于unity3d开发2d游戏的不二之选。
(PS:建议在unity3d4.3版本(Native2D)没有稳定之前或者对新技术还不是很熟悉的情况下,可以考虑继续使用2dToolKit)。
1.需求
2d游戏中最重要的概念就是Sprite了,而制作一般2d游戏都离不开Sprite的序列帧,比如一般的RPG游戏的角色有待机,行走,攻击,被击,各种技能...动作,tk2d提供的文档里介绍的是一种很酷的点击,拖拽方式就可以完成,大概流程如下:
(1)将某个角色所有动作序列帧合成tk2dSpriteCollection(根据不同需求同一个tk2dSpriteCollection可能包括多个角色,根据需求变通)
(2)创建tk2dSpriteAnimation对象,根据动作需求创建tk2dSpriteAnimationClip对象,添加至之前创建的tk2dSpriteAnimation对象中
(PS:具体操作请参考tk2d文档)
看似非常简单的操作,但是当角色和动作数量比较多的时候,这个工作就变得非常枯燥了(尤其是对于程序员...),我们仔细观察这个枯燥的工作,发现其中的工作是有规律并且重复的工作,对于程序来说,最擅长解决的问题就是有规律并且重复的工作了!
(PS:对于程序员来说,没有规律创造规律也要上!)
最后的需求定义为:通过程序解决项目中角色及其动作的生成工作!
2.约定
当确定好需求之后,我们要和美术做一些约定,约定如下:
(1)按不同角色将角色分组目录,比如Hero,Monster,NPC...
(2)在角色目录下,按动作再分组目录,比如Idle,Attack,Move...
(3)在不同的动作目录下,依次存放这个动作的所有序列帧,比如Idle,Idle...Idle
3.实现
我们所需要编程解决的问题,就是完成需求中提出的手动步骤!
(这个Demo使用的资源是tk2d中的creatingaspriteanimation资源)
(1)将角色所有动作序列帧合成tk2dSpriteCollection
为了简单,我从tk2d中引用了两个方法,分别为创建tk2dSpriteCollection和tk2dSpriteAnimation的Prefab
(PS:由于两个方法为普通方法,并非工具方法,于是我无耻的拷贝到了我的代码之中,为了美观,我就不贴了,最后会贴出Demo下载地址)
(2)创建tk2dSpriteAnimation对象,创建tk2dSpriteAnimationClip对象添加至tk2dSpriteAnimation对象
4.效果
生成的tk2dSpriteCollection如下
生成的tk2dSpriteAnimation如下
5.PS
这个只是一个Demo程序,功能还不是很完善,比如对于帧序列,可能需要某些序列帧播放多帧,这时我们就需要单写一种格式去描述这个Clip了!
文章转自CSDN.NET,如有版权问题,请联系删除。
北京中医治疗白癜风治白癜风