目前,移動平臺唯一清晰的商業模式就是手機游戲,中國AppStore上幾乎90%的收益都來自于游戲。在可預見的將來,手機游戲市場的競爭會越來越激烈。在這種情況下,開發技術、開發平臺的選擇將變得更加重要,因為一個好的開發平臺能夠最大程度地提高開發效率。
一、開發平臺的選擇
開發平臺的選擇主要是根據實際業務管理的需要,對硬件、軟件及所要用到的技術進行規格選擇,在開發產品之前篩選出可行的技術方案。軟件開發的核心技術選擇則涉及編程語言、環境、框架、功能等各方面的比較和考量。
在開發傳統的手機游戲時,iOS移動操作系統使用object-c語言,Android移動操作系統使用java技術,而現在的手機游戲主要是針對iOS和Android這兩種設備,相關的開發平臺主要有 Unity3d和Cocos2d-x。
二、Cocos2d-x的開發平臺
1. Cocos2d-x開發平臺的優勢及缺陷
Cocos2d-x是一個開源的移動2D游戲開發框架,是在MIT許可證下發布的,這是一個C++ Cocos2d-iPhone項目的版本。Cocos2d-x主要是在Cocos2d的基礎上發展跨平臺,除Cocos2d-x提供的框架之外,手機游戲還可以寫在C++或者Lua中,使用的API是和Cocos2d-iPhone完全兼容的。此外,Cocos2d-x還支持Windows、Mac和Linux等桌面操作系統,因此,程序員編寫的項目代碼可以很容易地在桌面操作系統中進行編輯和調試。而且cocos2d-x開發的項目還可以直接發布在iOS和Android系統上,對于三星和黑莓的手機操作系統也具有很好的兼容性,從而簡化了它的開發過程,提高了開發效率。
但是,Cocos2d-x也存在一些缺陷,如對于熟練C++的程序員來說,Cocos2d-x的開發難度不大,開發效率有保障。但是從目前情況來看,Cocos2d-x 的平臺發展已經基本到了瓶頸口,即使有更新,變化也不會太大,所以Cocos2d-x的開發平臺要想突破當前的困境,具有相當大的難度。
2. Cocos2d-x開發平臺的教學現狀
現在,很多職業院校都開設了Android課程,以Eclipse+安卓插件開發為主。這種教學模式實際上是延續了Eclipse+WTK的開發模式,但隨著Cocos2d-x的面市,很多小型游戲公司將其作為首選的開發平臺。目前,筆者所在的院校也將Cocos2d-x平臺引入教學中,對教學內容進行了調整,目的在于使學生畢業后能更快地適應市場的需求。
Cocso2d-x跨平臺游戲開發的課程內容有5個階段:①主要了解、認識游戲開發,并為游戲開發做好準備工作;②學習如何使用Cocos2d-x引擎進行游戲開發,它包含了Cocos2d-x引擎各個方面的基礎知識點;③學習游戲開發中一些常用的技術,包括網絡、安全、優化、編輯器等運用,并結合移動設備的特點和當前的市場環境,制作出受歡迎的游戲;④分析游戲引擎本身,以滿足游戲開發中各種擴展的需要;⑤結合實際的商業項目,讓學生掌握游戲開發的全過程,包括策劃、構架、管理等,以便學生能獨立完成游戲項目的制作。
三、Unity3d的開發平臺
Unity3d 因為是3d引擎,對2d的支持并不十分完善。運用Unity3d制作2d,普遍有兩種思路:一種是正交相機,即3d的畫面、2d的視角;另一種是通過一些插件,動態創建mesh來繪制圖形單元。目前,使用較多的是2d toolkit、ex2d、Smooth moves、sm2。但最近,剛剛更新完畢的Uni2d添加了許多新的功能,如支持骨骼動畫、像素級碰撞等,成為一個功能十分強大的2d 插件。
據了解,Unity3d 將發布原生的2d工具,從而彌補其在2d開發方面的缺陷。就開發效率而言,因為全部都是可視化編輯,同樣支持跨平臺,所以相對Cocos2d-x 來說,它的效率稍微高一點,而且越來越明顯的跨平臺優勢使得其官方的更新也比較快,不斷增加新的功能,比Cocos2d-x 的發展前景更好。
四、其他開發平臺
除了上面所說的兩大主流開發平臺以外,HTML5也在近兩年迅速發展起來。作為天生的跨平臺技術,HTML5在游戲方面的運用頗為引人注目,它引入了主流瀏覽器全部支持的WebGL。但是,HTML5游戲引擎只是簡單地將WebGL和Canvas API封裝,其性能和傳統游戲引擎相比,還有很大的差距,開發難度較大,因此筆者不建議使用,但其發展形勢值得關注。
(作者單位:江西旅游商貿職業學院)