丝路教育

咨询热线:025-68590001

热门课程

丝路教育>培训头条>游戏美术培训>

Unity开发设计MMOARPG游戏解决方案

  • 发布:丝路教育学院
  • 点击次数:63
  • 时间:2021-04-13

天神互动是一家已经上市的以研发MMOARPG游戏为主的技术公司,《苍穹变》是天神互动研发的第一款3D游戏。这款上线于2013年7月的产品,目前依然保持着腾讯游戏大厅单款产品单平台月度流水最高的记录。本文将分享《苍穹变》是如何利用Unity开发引擎打造RPG游戏的。

  Unity的利与弊

  一提到MMOARPG游戏,大家首先想到的就是体量大。以《苍穹变》为例,仅客户端的代码厚度就多达40万行以上,开发团队也从最早的十几人逐渐提高到了50人。MMOARPG游戏有一个特点——实时性比较突出,比如我正在做一个任务,说不定突然就会有几个玩家身着不同的装备,骑着不同的坐骑,拿着不同的武器出现,这瞬间对你的电脑性能要求非常高,不管是CPU、GPU,甚至包括网络带宽都会产生瓶颈,如果处理不好就会造成卡顿或崩溃。

  因此,我们选择用Unity作为开发引擎,优点包括以下几个方面。

  Unity是使用高级语言编写的项目,包括Unity在内的所有引擎都是用C++开发的。

  出于兼容性和运行效率方面的考虑,很多引擎要求客户端也用C++来开发,这对前端程序员的要求非常高。因为相对于C#语言来说,C++是一种比较难掌握的语言。C++的程序员如果写出不符合要求的代码,崩溃之后不好查问题,有Dump文件都没法定位。而C#则无需开发者管理内存对象,统一由Unity进行回收。一般来说,如果单个文件的大小超过4000行,会被认为代码可读性变差。但Unity可以很方便地通过组件式方法把一些常用的功能分开,整个精灵类只要管理好这些组件进行协调合作就可以了。

  作为一款较为成熟的游戏开发引擎,Unity几乎包含了传统开发3D ARPG游戏常用元素最好的解决方案,不管是从地形上,还是动画和UI上都能找到你所需要的模块。

  Unity的跨界合作思想推动了插件市场,这在很大程度上缩短了游戏开发的时间,因为它使一些基础的工作变得模块化,一些成熟稳定的插件还可以有效降低成本。NGUI插件就是个例子,如果让我们自己的团队去开发UI引擎的话,造成的时间浪费是不可想象的。

  当然,这样一款结构庞大的引擎,也存在一些缺点,其中最大的一个问题就是内存不易管控。上文说到C++是自己管理内存的,只要管理得好就不会出问题。而C#则是由Unity来管理内存对象的,如果写代码时不注意,某一个对象在它没有用的时候仍被引用,那么Unity在回收内存对象时不会对其进行回收。我们是从2.5版本时开始使用Unity的,那个时候以及之前的版本还不够稳定,出现问题也不好解决。Unity会经常崩溃,但崩溃原因却无从查起,影响了开发进度。

  另一个问题在于,刚才提到了组件结构,如果只是几个组件还比较好管理。组件多了之后,每个组件都有访问当前对象的权限,这时如果同时调用组件肯定会产生冲突,一定要基于一个很好的架构支持,才能有效避免组件之间的冲突。

  最后,我们知道Unity能输出Web版应用,这是Unity非常强大的功能,但再怎样,Unity也避免不了插件的问题。除此之外,Web版还存在缓存、更新等问题,几乎任何一个Unity开发的Web版游戏都要求用户下载微端,大家在决定开发Web应用或游戏时,需要考虑到这一点。

  MMOARPG游戏的团队管理

  开发这样一款游戏,团队协作无疑是非常重要的,这一过程也免不了会遇到一些问题,在此我给出几点建议。

预约申请免费试听课

填写下面表单即可预约申请免费试听!怕钱不够?可就业挣钱后再付学费! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:游戏主美设计是的三大特点   下一篇:成功游戏吸引玩家的7大心理战术
游戏设计需要学什么软件

游戏设计需要学什么软件

湖北孝感美术培训机构哪

湖北孝感美术培训机构哪

学3d建模需要绘画基础吗

学3d建模需要绘画基础吗

游戏角色设计师要具备什

游戏角色设计师要具备什

本网站版权归丝路视觉科技股份有限公司所有,盗用必究

全国所有校区课程0元试听

网站导航