zoukankan      html  css  js  c++  java
  • 漫步Unity3D(一)

    前言

            采用Unity它已经将近半年的时间,虽然项目仅仅是一个半成品。但Unity熟几乎相同的游戏。在这里,在使用过程中遇到的问题,再梳。不涉及过于详细的功能和代码。但是,假设他们将参与开发一个在线知识点,这样的直击“本质”的“答案”是非常多教学书籍所不具备的。


    一、背景介绍:什么是Unity

            2013年手游如火如荼,开发了端游页游之外的第三战场。

    而随着手游品质的逐渐提高(越来越多的大公司開始介入手游领域,手游不管从画面还是内容都直逼端游)。Unity開始为越来越多的人所熟悉和认可。  而越来也多的使用Unity开发的游戏创造了收入传奇,Unity 的身价也不断提高。就像Cocos2d-x一样。既是Cocos2d-x成就了大批畅销游戏。也是畅销游戏成就了Cocos2d-x,这是双赢。

            Unity是一个3D游戏引擎。在几年之前,人们提到3D游戏引擎基本上是三个阵营:

            第一阵营以Unreal、CryEngine、BigWorld为代表,是最高端的商业游戏引擎,特征是高品质、高授权费和高门槛,这样的游戏引擎一般人买不起,买了(或者是下载了破解版本号)也不会用。

    网上的教程少之又少,除非你在买了这样的游戏引擎的公司。跟着牛x的主程学习一段时间,否则入门都是一件很困难的事情。更不要说玩转它用来做游戏了。

            第二阵营是以Ogre、Irrlicht为代表的开源3D引擎。

    特征是免费、开源、良莠不齐。他们是免费的,这意味着能够省掉相当大一部分投资,他们是开源的。这意味着你哪里看着不爽就能够直接改。开源3D引擎中Ogre应该算是最出名的。由于造就了搜狐畅游的天龙八部。可是不得不说。开源游戏引擎的地位相当尴尬。

    能够这么说假设你是武林高手的话。那么草木皆可为剑,仅仅要你足够牛x。那么哪个开源引擎你都能够拿来做一个相同牛x的游戏。可是假设你不够牛,或者你的公司里没有足够牛的人(这在创业团队里并不少见),那么还是不要想着拿它们来做游戏了,甚至不要想着做3D游戏。

            第三阵营是个大公司自主研发的游戏引擎。

    游戏引擎决定了游戏公司的生产方式。大公司有钱有时间,能够花费大量的时间和金钱来等待一个必定失败的结果。

    小公司和创业团队不要想着凑热闹了。

            Unity是不同于上面三个阵营的独立阵营。它具备商业引擎的品质,可是授权费相当低廉。个人都能够买的起,更不要说公司了(并且网上还有大把破解资源,你甚至在赚到足够多的钱之前都不须要购买)。

    它的入门门槛非常低,常常有新闻说8岁的孩子拿这个引擎来写了一个游戏,还赚了不少钱,尽管是噱头。可是也能够说明一些问题。 网上教程和书籍都有非常多,能够非常方便的获取到学习资料。 Unity还创新的创建了Assets Store(资源商店),你能够花费非常廉价的价格(相对国外收入来说,动不动100美元的价格对国人来说还是贵了些。假设DF GUI的价格是90人民币,那我肯定购买,可是90美元我就望而却步了),购买到丰富的插件和资源(比方GUI插件、AI插件、特效集合、动画、模型等等)。

            

    二、引擎的争论,为什么要选择Unity

            常常看到有人问我该用Cocos2d-x还是Unity?或者我该学习Cocosd-x还是Unity?  这些问题并没有一个统一的答案,而我有我自己的看法。

            诚然,关于引擎的争论是幼稚而可笑的。

    牛x 的人用什么引擎都能够做出好游戏,菜鸟用什么引擎都仅仅能写个“Hello world”。可是游戏引擎决定了部门的生成方式。决定了资源和创意的限制,决定开发语言的选择,决定了后面要招什么样的人,它决定了太多的东西。所以一些思考还是很有必要的。我一直有这种看法,游戏开发的方向走对了,即便一開始走的慢些。可是会越走越快,而且能够避免走弯路、走死路。

             2012年初。我第一个公司(网龙)的MMO RPG游戏《征服》就移植到iPad版本号,这得力于公司牛b的引擎开发者,他们在非常短的时间内就把C3引擎移植到iOS、android甚至是WP8、html5、flash上了。那个时候就算联网的手游都非常少见,更不要说mmo了。尽管收入还惬意。可是没有大红大紫。

    手机版本号和中文版本号一直没有放出来。2012年底的时候。我到了第二家公司(天盟),进来没多久我就跟总监说,我们能够把公司的3D MMO移植到手机和平板上面。不会花非常多人力,无论能不能赚钱,我们就算赚吆喝也不亏,把手游mmo rpg的市场先给占了。可是得到的答复是,我们引擎不支持手机。3D MMO对手机性能要求太高,所以这个不是当下须要考虑的。2014年的今天,mmo rpg和arpg如火如荼......

             回过头来再说方向的选择,举个样例,假设一開始选择的是Unity,那么就不会碰到移植的困难。假设一開始开发语言选择的是lua,那么你要招募一个合格的小弟要easy非常多。我们写c++写的熟悉了,感觉哪个语言都差点儿相同,甚至lua由于没有编译报错,反而会碰到非常多不爽的问题。可是不得不说,c++须要注意的细节非常多。写好一个lua 的逻辑要比写好相同的c++逻辑easy太多了。

            对于初出茅庐的人来说,应该学习哪个游戏引擎能够更好的找到工作?我个人的观点是学习cocos2d-x。由于如今大多数国内公司还是使用cocos2d-x来开发2d或者2.5d游戏。

    Unity3D是着眼于不久的将来。

    第二个原因是,相比于Unity,cocos2d-x实在是太简单的。学习cocos2d-x你能够更加easy的了解到什么是游戏引擎,游戏引擎在做什么。这样的学习提高是大大优于Unity中的托托拽拽的。

             开发游戏跟学习游戏引擎又有点不太一样。如今通常的观点是。开发2D游戏使用cocos2d-x+lua的方式,开发3D游戏使用Unity。大多数情况下,这么说是合理的。

    这两种组合都有非常多的成功案例。

    我如今已经熟悉Unity了,而且我想做的游戏是一个3D ARPG。那么毫无疑问我会使用Unity来开发。这个时候即便公司突然说要开发一个2D游戏。我也会使用Unity,由于Unity有非常多专业水准的2d插件,它的资源管理和编辑器功能无比强大。

            (第一部分结束了,废话超乎想象的多。

    之所以在这里结束第一部分是由于第一部分有太多“口水”的东西,尽管我个人挺喜欢看这样的八卦的东西,但是,我不得不说。缺少的材料啊。那么,第二部分,猛料来了)


    版权声明:本文博主原创文章。博客,未经同意不得转载。

  • 相关阅读:
    leetcode 279. Perfect Squares
    leetcode 546. Remove Boxes
    leetcode 312. Burst Balloons
    leetcode 160. Intersection of Two Linked Lists
    leetcode 55. Jump Game
    剑指offer 滑动窗口的最大值
    剑指offer 剪绳子
    剑指offer 字符流中第一个不重复的字符
    leetcode 673. Number of Longest Increasing Subsequence
    leetcode 75. Sort Colors (荷兰三色旗问题)
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4883557.html
Copyright © 2011-2022 走看看