首页 > 业界新闻 > 详情

4年前的Cocos老游戏如何在Apple TV焕发新生?

Gwenn Guihal来自法国,今年32岁,是一位iOS程序员。4年前,他用早晨上班前的业余时间开发了一款Cocos回合制坦克游戏,名为《YES SIR》。最近他把这款游戏又搬到了Apple TV上面,让大家可以在客厅里瞄准目标开炮、对决,其乐无穷。


今天我们来听听Gwenn Guihal的故事吧!

 

blob.png

 

Q:为什么会开发这样一款游戏?

 

这大概是童年的执念吧。小时候我家里有台286电脑,我就经常和哥哥玩《Tank Wars》,当时简直如痴如醉。就算过了20多年,我始终忘记不了那游戏。


对我来说,苹果商店里没有一款游戏能跟它一样好玩,所以我就打算自己动手做一个。

 

Q:为什么会选择Cocos引擎?

 

这游戏走的是复古路线,所以我希望找个优秀的2D游戏引擎。另外,我的目标是做一个跨平台游戏。在2012年,Cocos2d-x是唯一一款既能提供跨平台功能,又具有高性能表现的引擎!为什么要对这么好的引擎说不呢?

 

比如说,我很喜欢能够访问底层 OpenGL 接口来创建地形。引用计数机制是 Cocos2d-x 中很棒的一个特性,让内存管理非常轻松。引擎中还提供了很强大的 Box2D 支持,与其它 C++ 库(数学库,便利的几何运算辅助库)可以很好得相容。

 

作为一款开源引擎,Cocos还允许我做一些个性化的小定制,简直太赞了。

 

Q:除此之外,你还有使用哪些工具或第三方库吗?

 

工具: PhotoshopIllustrator, Flash TexturePackerbmGlyph

IDE : Xcode

第三方库:CrittercismFacebook SDK, FlurryClipper(作者:Angus Johnson), Triangulate(作者:John W. Ratcliff

 

Q:游戏的画面和音乐设计也是出自你之手吗?

 

没错。我在《地狱边境》(limbo)里面找到了不少灵感,所以你看到整款游戏都是黑白居多,当然这也是因为比较省力(笑)。整个设计花了我很多时间,主要是靠 IllustratorPhotoshopFlash


blob.png

 

音乐是我老婆制作的,她用大提琴创作了背景音乐,我在里面加了点鼓点。

 

Q:《YesSir》是怎么走进Apple TV

 

2012年我是用Cocos2d-x 1.2版本开发《YesSir》,当时它还只支持OpengL ES 1.1。后来随着苹果设备的升级,我也只是简单更新了一些代码。

 

像其他开发者一样,20159月份的时候,我收到了一美元的Apple TV 开发工具包。因此我立刻决定把《YesSir》移植到这个全新的设备上!


blob.png

XCode里面,我建立了一个新的“tvOS”目标,然后运行项目。正如你可能预料到的那样,一开始出现了很多错误。但在两小时后,我去除了一些不支持Apple TV架构的LIB(度量,碰撞分析,Facebook…),注释了一些代码(特别是引擎的音频部分),终于把游戏成功运行在Apple TV了!

 

为了提高操作体验友好度,我又做了很多针对Apple TV的改善工作:我在主窗口增加了本地滑动手势识别,更新引擎的事件显示列表。我还在 CCMenu类里做了些变动,来保证自动处理聚焦。


接下来我只需要定义物品彼此之间的距离。我更新每一个场景以支持焦点,并且保证只有一个元素获得焦点。最后,我还得做些图片适应工作,因为电视的色彩和对比度和iPhoneiPad不太一样。

 

 

总结下,整个移植工作我花了6个月,每天大约12小时。除了端口以外,我还加了一个本地多人模式。幸好《YesSir》是个小游戏,所以移植工作量比较小(v1.2也完全hold得住)。现在玩家们可以在自家客厅里拿着遥控器,看着大屏幕打炮了,想想就觉得很激动。

 

Q:最后,你有什么建议想和大家说呢?


作为一个独立游戏开发者,我的建议是大家可以从小做起,然后慢慢增加功能。游戏虽然小,但要求精致、完美,尽可能少出现bug,尽可能提高画面精美度。这样当用户接触到你的游戏时候,一定会留下深刻印象。

 

不要犹豫,勇敢挑战自己。游戏人注定是一条漫长的道路,坚持就是胜利。现在我在做一款益智类游戏,已经进行了一年了,也希望到时候再与大家分享。

 

blob.png 

扫描二维码即可下载《YesSir》。

 

 


QR code