Unity如何搭建游戏框架

Unity作为全球最知名的游戏引擎之一,功能已经做的非常完善了,为什么我们还要在开发项目的时候需要搭建游戏框架呢?基于Unity来搭建一个游戏框架,我们又应该如何思考,如何做?今天给大家分享一些Unity游戏框架搭建相关的内容和理念。

为什么有Unity引擎还要搭建一个游戏框架?

Unity是游戏引擎,面对的是任意类型的游戏使用和不同的开发团队。所以他提供的是机制,很少提供一些具体的策略,比如资源管理,提供addressable/asssetsBundle机制。比如开发模式提供组件化开发的模式,比如编辑器扩展,提供编辑器扩展的机制。Unity提供的场景编辑,光照烘培,粒子系统等工具为我们开发游戏提供了很多方便,解决了3D游戏中场景制作特效等问题。提供Prefab机制,可以将编辑的好的内容做成一个一个的预制体。提供渲染管线定制与Shader开发机制,方便我们做出高性能的渲染和特定的效果以及开发特殊的Shader。提供了这些机制后,至于每个团队,每家公司具体怎么用即使用策略交给团队与公司自己决定,Unity不去做过多的设计和干涉。所以这就是为什么很多公司会基于Unity 做一套适合自己团队,适合自己游戏的开发框架, 来规定一些具体的策略,和开发协作中的一些规定。每个公司开发的游戏类型和需求不一样,有一些专门领域的算法和工具需要公司来定制,自然unity就不会提供了,比如特定的地图编辑器等。

Unity游戏框架要解决哪些问题?

上面了解了我们为何有了Unity引擎还要搭建Unity框架,接下来我们来分析一下一个Unity游戏开发框架到底要解决哪些问题,确定哪些策略和机制。

首先要确定的就是组织代码和资源的方式。我们做项目需要维护,需要多人协作,同时开发游戏,包含了美术,策划,程序等多个岗位的开发人员。如果通过制定一个策略把这些开发人员组织在一起,比如目录结构如何划分,美术做好的界面放哪里,美术做好的地图放哪里,美术做好的特效放哪里,策划做好的数值数据放哪里,程序如何使用资源,如何读取策划的数值表,数值表的格式是什么?程序的代码如何放,哪些属于其它项目可用的代码,哪些属于这个游戏业务逻辑代码。

其次要考虑的是游戏的核心玩法所需要的美术风格,渲染效果和游戏性能。对于一个游戏而言最重要的现在就是玩法与效果,所以客户端的游戏效果是什么样子对于游戏来说很重要,所以很多大型的游戏公司里面做项目的第一件事情就是定制渲染管线编写Shader做好对应的美术风格。同时手机游戏还要考虑不同的平台显示的效果的差异,需要通过修改代码来修正这些显示上的差异。还有些核心的玩法需要高度的依赖一些Shader,比如衣服布料等,同时多人战斗的核心玩法还需要定制和修改相关的组件来做到高性能,支撑核心战斗。

还有可能要针对游戏的玩法和类型开发一些特殊的工具,比如地图编辑器,比如关卡编辑器,比如路径点标记等等。这些就需要开发一些特殊的工具和脚本。

最后要做的就是上线发布时候必要的一些工具和功能,比如SDK对接,打空包,资源更新,代码热更新等。考虑这些,也是我们做游戏框架必须要解决的问题,而这些问题一般Unity引擎不会直接提供。

Unity 游戏框架具体如何设计

通过上面的描述大家明白了为什么要基于Unity游戏引擎来搭建框架,那么当我们要做一个类型的游戏的时候如何来做游戏框架呢?我这边分享一个我带项目时候的具体的做法,供大家参考。

首先策划会告诉我这个游戏的核心玩法,我要快速的确认这个游戏的美术风格细节(光照,影音等),确认最复杂最消耗性能的战斗客户端的性能是否能支持,最快的速度模拟这种性能极限来做渲染管线的定制和Shader优化等。核心玩法的技术难点一旦被验证过了,这个游戏基本上都能做出来。这样框架里面就有了渲染效果代码和特定的Shader。这个解决后美术就可以进场来做场景设计和资源编辑了。

渲染效果与性能问题解决后,接下来就开始做常用的一些功能模块来支撑业务逻辑的开发,首先是目录结构的组织,游戏框架代码的启动流程,各个常用的游戏模块: 资源管理模块, 调试日志模块,UI管理模块, 网络管理模块,数据表格管理模块, 一些工具性质的代码,如http上传下载, 工具类的函数等。

接下来搭建热更新与资源更新,打空包相关的代码脚本和编辑器扩展,能支持资源更新热更新,打空包等。打包的时候还要考虑到版本号和版本管理。

最后就是针对游戏玩法关卡设计等,开发一些工具,比如关卡编辑器,地图编辑器与路径烘培等。

这些东西都做好了以后,针对这个项目的框架就算做好了,大家基于这套来进行开发协作,框架也就做好了。

今天的分享就到这里,关注我,可以获取一些更多的Unity 游戏开发相关的技术讲解和课程。
https://bycwedu.vipwan.cn/promotion_channels/710180854

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,284评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,115评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,614评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,671评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,699评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,562评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,309评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,223评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,668评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,859评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,981评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,705评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,310评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,904评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,023评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,146评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,933评论 2 355

推荐阅读更多精彩内容