查看: 77983|回复: 203

【飞机大战】开发手记(一)精灵和动画

[复制链接]

1

主题

342

帖子

7万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
75866
发表于 2014-9-4 04:47:37 | 显示全部楼层 |阅读模式
前段时间微信游戏中心上线,自带的《飞机大战》着实火了一把。对笔者来说,重点当然不是苦练大半天也排不到微信好友前三名,而是据称“这个突然爆红的小游戏,是微信团队一位同学临时抱佛脚,啃着饼干用一周时间开发的”。无需多言,进行简单的分析之后,笔者已经跃跃欲试了。
【飞机大战】开发手记(一)精灵和动画
unity3d2D游戏,会不会有点棘手呢?答案当然是否定的,在Unity中可以依靠强大的插件来完成。况且《BattleHeart》类游戏的成功,证明了Unity在2D画面上可以像其他引擎做得同样出彩。
既然是个2D游戏,首选插件非NGUI+2D Toolkit黄金组合莫属,笔者决定用它们来山寨一个《飞机大战》,完成之后再做些小扩展。那么,系好安全带,Here we go!
  • Unity版本:4.2.2f1
  • 2D Toolkit版本:2.00 hotfix 2
  • NGUI版本:3.02

首先创建一个新的项目,取名为ProjectAircraft。导入2D Toolkit插件,会出现一些为了向上兼容的警告,可以无视。
【飞机大战】开发手记(一)精灵和动画

点击一下主菜单,就会刷新出现“2D Toolkit”菜单,这说明已经成功导入了tk2d。在工程面板可以看到出现了“TK2DROOT”目录,这是tk2d的根目录,一般情况下不用去动它,有兴趣的同学可以看看其中的tk2d_demo目录下的场景,熟悉一下tk2d的功能和特性。
【飞机大战】开发手记(一)精灵和动画
类似NGUI的图集(Atlas),tk2d将精灵组织为精灵集合(Sprite Collection)再引用,这样可以减少DrawCall和频繁加载贴图以提升性能。因此要显示精灵,精灵集合的创建是必不可少的:
在工程面板中依次创建目录“SpriteCollections/Aircraft/Sprites”,将我方飞机的两张图片拖入。
【飞机大战】开发手记(一)精灵和动画

右键点击Aircraft目录并在弹出菜单中选择“Create->tk2d->Sprite Collection”,创建一个空的精灵集合并重命名为Aircraft。
【飞机大战】开发手记(一)精灵和动画

选中Aircraft,在检视面板中就可以找到“打开编辑器(Open Editor...)”按钮。
【飞机大战】开发手记(一)精灵和动画

点击打开编辑器,将之前导入的两张飞机精灵拖动到图中“将精灵拖放到这里(Drop sprites here)”位置。
【飞机大战】开发手记(一)精灵和动画

同时选中导入编辑器里的两个精灵,将“碰撞类型(Collider Type)”设置为“自定义矩形(Box Custom)”。这样就可以在中间手动调整精灵的碰撞器了。这里调节好碰撞器主要是为了在游戏中可以做子弹和机体的碰撞检测,以实现子弹命中的判定等。完成之后别忘记点“应用(Apply)”,并“执行(Commit)”。
【飞机大战】开发手记(一)精灵和动画

有了精灵集合之后就可以创建精灵动画了,在工程面板中创建一个“SpriteAnimations”目录用于保存所有的精灵动画。
右键点击目录并在弹出菜单中选择“Create->tk2d->Sprite Animation”,创建一个精灵动画的预设,并重命名为Aircraft。
【飞机大战】开发手记(一)精灵和动画

同样的,选中它之后在检视面板中可以打开编辑器。

点击在主菜单中选择“GameObject->Create Other->tk2d->Sprite With Animator”创建一个带动画的精灵,并重命名为Aircraft。选中后在检视面板中如图设置。
【飞机大战】开发手记(一)精灵和动画

此时如果点击运行游戏按钮,则会发现在场景面板中飞机是有动画的,但是在游戏面板中只有一片蓝色。这是因为Unity自带的摄像机不能正确地显示tk2d的精灵,所以要把层次面板中的Main Camera对象删除,并通过主菜单“GameObject->Create Other->tk2d->Camera”创建一个tk2dCamera。再选中层次面板中的Aircraft,在检视面板中点击“1:1”按钮。
【飞机大战】开发手记(一)精灵和动画

这样一来游戏面板的左下角就能够看到1/4的飞机精灵了。在场景面板中移动一下精灵可以发现,在tk2d中是以屏幕左下角为坐标系原点,向上为Y轴正方向,向右为X轴正方向。将精灵拖动到可见范围内,然后点击运行游戏,一个简单的飞机精灵动画就完成了。
回复

使用道具 举报

ngk02lds78 该用户已被删除
发表于 2014-12-28 02:51:06 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

woaiwojia6188 该用户已被删除
发表于 2014-12-28 02:52:14 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

xbit 该用户已被删除
发表于 2014-12-28 02:53:25 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

海妖 该用户已被删除
发表于 2015-4-6 03:52:14 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

0

主题

1286

帖子

3899

积分

vip会员

Rank: 1

积分
3899
发表于 2015-4-6 12:56:42 来自手机 | 显示全部楼层
小白一个 顶一下
回复 支持 反对

使用道具 举报

天使爱上吸血鬼 该用户已被删除
发表于 2015-4-7 03:57:20 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

用心承诺 该用户已被删除
发表于 2015-4-9 16:43:59 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

心愿 该用户已被删除
发表于 2015-4-11 02:02:19 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

l.ukk 该用户已被删除
发表于 2015-4-11 03:07:39 来自手机 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

*滑块验证:
您需要登录后才可以回帖 登录 | enginedx注册

本版积分规则

 
 



邮件留言:


 
返回顶部