人气 1460

[翻译文档] Unity这个3D引擎很厉害吗?的确可以完成各种终端的游戏研发吗? ... [复制链接]

ylifk 2018-2-6 16:53:31

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

使用道具 举报

Veronikkawag 2018-2-6 16:24:03
Unity 3D是我用过的3D引擎中最好的一个。功能强大,效果逼真,运行流畅。

它提供了一个整合的编辑器、跨平台发布、地形编辑、着色器,脚本,网络,物理,版本控制等特性。可以开发桌面版、WEB版、手机版的游戏。据说将来还会支持发布到Flash,是一个非常理想的三维游戏开发平台。

最近一直在用Unity3D进行开发,多少研究的又深入了一些,所以再补充一些吧。我觉得Unity3D的厉害主要体现在以下几个方面:

1. 专业级的效果,傻瓜级的操作。连我这样完全不懂3D的人,也可以轻松制作出很好的3D应用。

2. 同时支持JavaScript 和 C#,做开发的分为两类,做前台的和做后台的,前者一定会js,后者一定会JAVA或者C#,Java程序员看C#,完全没问题,所以任何人都能够轻松的使用这个工具做开发。

3. 支持多平台,谁都想一次开发到处显示,以前是JAVA后来是FLASH,现在是UNITY了,同样的程序:桌面,浏览器,iOS,Android,Xbox,Wii,现在还添加了Flash导出,几乎无所不能。

4. 做2D和做3D一样强大,最近的一个项目里同时有2D和3D部分,在以前2D部分是用FLASH完成的,因为现在要放到IPAD上,所以在FLASH和UNITY中间做了一下抉择,最终选择了Unity,Unity很好的完成了2D部分的所有功能,可我觉得用Flash可能没法实现Unity的3D效果。
回复 支持 反对

使用道具 举报

盎青 2018-2-6 16:27:35
真实栗子证明疗效
同样是制作ACT类型的游戏:
使用Cocos2dx
  各种坑及编译, 跨平台兼容性, 稳定性
  写一个游戏, 始终要写出一个游戏编辑器. 费力还要被骂不好用
使用Unity3D后
  腰不酸, 腿不痛 了, (跑错片场)
  集中精力写GamePlay, 状态机可以直接在面板上看状态.
  一小段代码就可以马上从面板上杀死角色用于测试逻辑
  只用写很小的面板代码就是一个超级稳定好用的角色编辑器
  再也不用写平台相关代码
  终于因为闪电编译没时间刷知乎了
  一天打无数个平台, 渠道包都是可以的
  C#的各种语法糖和类库, 周到的把老婆都哭晕在厕所

广告语:  Unity3D, 让你站在巨人的肩膀上开发游戏
回复 支持 反对

使用道具 举报

猴与花果山 2018-2-6 16:30:56
一般吧 不过开始用之后 主要收入来源就是它了
回复 支持 反对

使用道具 举报

蓝琦儿 2018-2-6 16:33:31
刀进俗人手不如柴,柴进高人手也是刀。
回复 支持 反对

使用道具 举报

BLYS 2018-2-6 16:37:27
Unity3D的优势有以下几项:


  • 部署简单
    相比Cocos2d-x,OGRE等引擎,对于新手非常友好的一点就是其部署超简单,并且还自带了一个IDE:MonoDevelop,只要按下install,之后的创建新项目,多平台打包等等操作均可以在编辑器里面直接完成。另外,Unity的中间件均可打包成unitypackage进行发布,插件的部署也是最简便的。
  • 完整的技术栈
    相比其他游戏引擎,Unity最大的特点就是形成了一个成规模的插件市场,在此基础上,Unity具有相当多的中间件,可以大大加快独立开发者和公司的开发进度,如下图:
FItmNl122IiGgzBt.jpg




  • 活跃的社区和Wiki
    Unity的社区是当前各种游戏开发社区中最活跃的,这点可以从知乎上的Unity3D话题的关注人数看出,也可以从百度指数的游戏引擎对比看出。
  • C#作为脚本支持
    C#作为脚本可以在编程效率和运行效率之间取得比较好的平衡,如果你用过 C#的话,你一定很快就会喜欢上这门语言。况且使用C#也是报上了微软的大腿,今后的微软一系列新鲜技术也很有可能会和Unity搭配得当。(比如HoloLens)
回复 支持 反对

使用道具 举报

xiexi890 2018-2-6 16:40:02
说几个比较著名点的例子
纪念碑谷 Monument Valley
Cities: Skyline
Kerbal Space Program
回复 支持 反对

使用道具 举报

hjuh5065 2018-2-6 16:43:31
引擎的好坏并不是单纯用分数就可以完全衡量,关键还是看它能否契合项目目标。如果考虑到公司长远规划,又是另一番考量。
尽管如此,unity还是适时地出现在开发者的视野中,这就是中国人讲的“天时”。移动互联网浪潮,页游兴起,玩家在抛弃了泡菜又吃腻西式大餐之后,开始寻找一种轻松的小吃;unity很好的找到了它的定位。
从技术角度来看,动态资源加载,方便的多平台编译,自定义shader,轻量级的可扩展的用户界面,自定义数据文件以及Plugin方式接入dll,这些特性在快速开发的基础上,同时也为扩展提供了相对的可能性。
做为一个技术人员,势必需要一些前瞻性,我同意上面那位“魏景军”的话“现在不用Unity3D做游戏,我怕我五年后会后悔”,低成本、低技术门槛、快速迭代,将会为unity带来一大批用户。不是说它现在已经很好,而是需求将推动平台发展。
同时,我相信随着unity的发展,它不会仅仅满足为独立开发者或者小工作室提供服务,至于能做到什么地步,让我们拭目以待吧。
不管怎样,产业链上游企业的激烈竞争,对专注于内容本身的游戏开发商来说总归是一件好事。
回复 支持 反对

使用道具 举报

Toireereeneve 2018-2-6 16:46:35
很厉害,确实可以完成几乎所有终端的开发。

Unity3D我觉得牛逼在这几个方面:

首先就是跨平台——虽然好多引擎声称跨平台,但你看不到一个引擎可以支持这么多平台并且支持的这么好,并且你在开发过程中真的可以做到几乎完全不用写平台相关代码。

强大的编辑器:所见即所得,资源拖拽即可用。

基于组件的开发模式:在Unity之前,很少甚至几乎没有这样设计的游戏引擎。在Unity里资源是第一位的。代码既是资源也是组件。作为组件的代码可以高度复用,也可以各种组合。甚至于你可能不知道这段代码的意思,但只需要知道他的功能就可以使用它(挂载到相应的GameObject上就OK了)。

assetstore:过去你想做个3d游戏,没有美术肯定是不可能,这对于个人和小规模团队开发造成很大的门槛。而assetstore让你可以获取大量廉价甚至免费的游戏资源,小到一个模型,大到完整项目,你都可以买到。从这一点来看,unity是准备打造一个基于引擎的生态系统,无论是美术,还是程序都可以参与其中。
回复 支持 反对

使用道具 举报

屋顶上的猫先生 2018-2-6 16:49:18
unity的伟大在于这是一款可以让屌丝逆袭的开发工具,身边很多人因为unity而有房有车。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|小黑屋|九艺游戏动画论坛 ( 津ICP备2022000452号-1 )

GMT+8, 2024-3-29 17:18 , Processed in 0.134304 second(s), 28 queries .

Powered by Discuz! X3.4  © 2001-2017 Discuz Team.