SpriteKit:引言

对于一个想学习游戏开发的新手来说,我觉得第一件事首先就是选择一款游戏引擎。如果你想从构建游戏引擎开始着手来开发一款游戏,对个人开发者以及一些小团队来说真的是有点小题大做了,毕竟免费得游戏引擎很多,而且大多都很优秀,背后有强有力的团队在更新和维护。所以我觉得结合自己的条件,以及游戏的特点选择合适的游戏引擎是很好的选择。

所以我们先来分析自身的条件:首先鄙人是做iOS App的开发,对iOS的开发虽谈不上精通,但很熟悉,所以我希望开发移动端的手游(规模不大,一个人能完成最好,偏向于2D游戏);其次鄙人一直都想在空余闲暇的时候做游戏开发,纯粹点说就是个人爱好而已,觉得自己和朋友能玩上鄙人开发的小游戏是一件很有成就感的事情;最后就是游戏运行在多平台上这个需求不是很在意,所以引擎的跨平台性对我来说不是很重要。

分析完自身条件,我们再来列举一些现在主流的一些移动端的游戏开发引擎,然后选出对自己最优的那个。

  1. Cocos2D系列
  2. Unity3D
  3. SpriteKit

光Cocos2D系列就有很多个版本的引擎,最先的游戏引擎就是Cocos2D-iPhone这样的,那时针对不同的平台有不同的Cocos2D引擎对应,开发者需要根据不同的平台选择不同的引擎版本。近年来由于跨平台的需求,所以Cocos2D-x的份额越来越大。在Cocos2D-x下还有很多不同语言的版本,比如Cocos2D-lua、JS等,这些脚本语言开发起来更简单、更快速。而lua语言的的简单性和热更新使得Cocos2D-lua大受欢迎,而IDE环境的支持,功能的不断更新大大降低了开发的难度以及开发者的工作量。Cocos2D-x的跨平台性,完整的生态圈,强大的技术支持使得它成为国内手游厂商的最佳选择。而Cocos2D-iPhone随着单一的平台支持、以及苹果在iOS7.0时推出自家引擎后慢慢的淡出了大家的视线。貌似现在Cocos2D-iPhone和SpriteBuilder整合在一起了。

Unity3D是近年来得一匹大黑马,抢占了移动端3D游戏引擎的大部分份额,一些很有名的移动端手游都是基于Unity3D开发。这匹黑马搞得很多传统大牌的桌面端引擎厂商都慌了,纷纷推出自家移动端的游戏引擎。Unity3D的优势不仅跨平台,还提供了可视化的IDE环境。同时还提供了很多超级棒的子系统,比如物理引擎、粒子系统、动画系统等等,同时还提供了很多有用的资源。Pro版是需要购买授权的,貌似4.0开始有免费版的可以选择使用。如果你得游戏能火,授权费跟游戏赚得钱根本不值一提,专业版还是值得考虑的。

SpriteKit是苹果在iOS7.0的时候推出的,缺点当然就是不跨平台了。优点对于iOS开发者来说,我到觉得是一大推,根本就不需要说了。其实很早之前就有系统学习过Cocos2D-iPhone,后来学习SpriteKit的时候上手就很快,感觉很多东西都是类似的,概念都是相同的。SpriteKit是2D的,在iOS8.0的时候苹果又推出了SceneKit和Metal。

说了这么多,我最后的选择就是SpriteKit,因为我不需要跨平台,其次偏向于2D小游戏。我觉得学会一种游戏引擎,然后再转向另一种应该也不会太难。就像精通了一门语言,再学另一门语言一样。

接下来就开始学习SpriteKit,开始之前还是推荐一本书给大家iOS Games by Tutorials Second Edition

坚持原创技术分享,您的支持将鼓励我继续创作!