Unity 3D正在革命游戏开发市场。

我从Unity1.0开始关注它,并且从1.5开始使用。我感觉Unity 3D是一款革命性的游戏引擎,它(和一些同样具有创新精神的引擎)正在改写开发游戏的历史。

【高风险的大型游戏开发】

传统上来说,开发游戏是一件费时费力的事情,而且80%的情况下开发游戏这件事就是一个灾难。因为游戏是一个交互艺术,这个交互不仅体现在娱乐方式上,也体现在开发过程中。修修补补是开发游戏的家常便饭。但是,由于传统的游戏开发至少涉及策划、美术和程序,因此任何一点微小的调整都需要各个环节通力合作才能勉强达成。而游戏的品质如何,往往要到最后开发出来一个版本才能看到。这时,项目往往已经开发到50%以上的进度了,无论做什么调整,都意味着巨大的先期投入。

然而幸运的是。虽然开发游戏的风险很高,但是传统游戏市场的回报也是丰厚的。次世代平台的游戏动辄可以获得几千万、甚至上亿美元的回报;某些大型网游也能达到近似的回报。为了拿到这么高的回报,当然无论从技术还是资金上都可以玩命的冒险。

因此,游戏开发的主要工具——引擎——就成了这个领域的一个关键性竞争要素。像Unreal、Cry这些超级引擎,在其发展的初期就确立了两个指标,其一是贵;其二就是复杂。这些引擎有强悍的稳定性,但是调试过程和开发过程都相当复杂(我猜想是因为为了抢先实现一些视觉或功能上的效果,它们采用了很多层的技术来堆积引擎结构,导致引擎既庞大又难以驾驭),不过一开始他们不必担心这些问题,因为他们的客户都不差钱儿,而且有的是人手来“十年磨一剑”。

北京、上海、杭州每月都有几百万投资的新游戏项目启动,公司动辄4、50人,不少都能达到百人规模,购买昂贵引擎或者偷用昂贵工具的公司当然也不是少数。但其中大约七八成儿最终都没有获得预想的成功。足见游戏开发的风险之大。

【小型游戏、独立游戏开发】

当然,虽然每个做游戏的人都希望能搞一款大作,但不是每个公司都有机会做大型游戏的。因此几乎从游戏开发诞生那天起,小型游戏(中型游戏)开发就是这个领域的最主要项目形式。

中小型游戏一般规格不大,大多每次游戏时间都在1小时以内,也没有复杂的多人联线模式。因此开发起来相对有时间短、玩法鲜明的特点。在过去,中小型游戏大部分都采用开源引擎、Flash或者Java驾驭的自编引擎。这些特色让小型游戏迅速拥有了数量上的优势,占有了巨大的玩家时间。但是,小型游戏也有2个让开发者踌躇的问题:

  1. 这些引擎和工具大部分是基于二维技术的,因此我们看到的90%以上的中小型游戏都是二维的。视觉表现上越来越跟不上玩家的要求。
  2. 中小游戏的营收模式长期缺少保证,越来越低的投入导致品质越做越差。

【Unity】

Unity3D在发展之初,给自己的定位主要是中小游戏的开发。这个定位在一开始(Unity1.x时代)并不那么一呼百应,因为前面提到的两个问题里,Unity只能解决第一个,对第二个问题它开始也是束手无策的。

不过它有两个与大型引擎相反的特性,第一是便宜,第二是简单。它通过完善工具,解决了一些的确对游戏开发流程非常非常重要的问题:

  • 容易上手。U3D有着与传统3D软件十分接近的界面,甚至某些方面比传统3D软件还要简捷易用,因此很快吸引了那些有3D软件使用经历的人。容易上手对一个引擎的普及非常重要,没人喜欢复杂难用的东西。
  • 多语言编程。兼容JavaScript和.Net(C#)这两个比较主流的语种,方便程序开发。不过更重要的是,如果你对自己的逻辑和数学有信心,你也可以自己学这些语言来开发游戏。没你想的那么难。
  • 节点堆积。U3D对所有场景物体“一视同仁”,通过堆积在上面的一条条功能来给它们添加各种属性。这让U3D成了世界上最容易理解的引擎结构之一。
  • 傻瓜式调试和编译。只要点“播放”就可以马上测试(这个功能与大型引擎看齐)。
  • 强大的扩展性。U3D有一个比较开放的结构,你可以自由添加一些自己编写的工具和插件进去,进一步完善U3D的功能,并且这些功能也可以跨平台使用。

还有很多特性可以自己去网上了解。

此外,Unity很“幸运”。iPhone和iPad突然火了,FaceBook也爆炸式增长,这让中小游戏突然有了全新的营收保障。目前全球增长最快的游戏领域是SNS游戏和手机游戏。而Unity正因为在这两个领域的强悍和实用性而变得成长更为迅速。

因此,我认为Unity可能并不是最为“强大”的引擎,但它一定是目前世界上成长速度最快,也是最好用的游戏引擎之一。