最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Unity架構師必備開源框架:3天打造大廠商用框架

2023-02-17 10:20 作者:游戲開發(fā)RAIN  | 我要投稿

現(xiàn)在Unity的相關技術已經(jīng)都非常常熟了,如果你的技術能力與閱歷夠,搭建一個商用的游戲框架,你只需要3天的時間。今天給大家分享一個Unity老鳥3天能搭建一個自己的商用框架的幾個必備的開源庫,方便大家學習與使用,同時學習這些有前途的開源庫也能讓你在公司里面游刃有余。

?

1: 搭建商用Unity框架必須要考慮的幾個點

?

首先我們做商用的Unity游戲開發(fā)框架要考慮一些點,做一些取舍,來做好技術選型,主要考慮以下幾個方面:

1:采用什么樣的技術來做熱更新,目前主流的熱更新方案有: Lua解決方案, ILRuntime解決方法,TypeScript的puerts解決方案, IL2CPP的解決方案, 目前強烈推薦大家使用IL2CPP的解決方案huatuo/HybirdCLR。因為這個方案是性能最好的,不會改變任何Unity開發(fā)方式的最好的一種熱更方案,也將會是Unity方案的主流。

2:選擇一個好的資源管理技術方案,資源管理技術方案是游戲開發(fā)中最重要代碼量最多的方案之一。資源管理主要是要考慮開發(fā),發(fā)布,打空包,資源熱更新,打包增量與更新, 多平臺多渠道多版本管理等需求。

3: 其它一些小模塊與游戲制作相關的工具,比如配置表,UI框架,時間管理,定時器,IO,Debug模塊等。

4: 采用什么樣的開發(fā)模式來組織業(yè)務邏輯代碼, Unity是基于組件化開發(fā)模式的,很多游戲框架也會做一些小的改動來定義項目中的開發(fā)模式,比如有些框架用狀態(tài)機作為流程切換與管理的主線,有些用傳統(tǒng)的方式來做流程與管理的主線,具體可以根據(jù)自己要做的游戲類型, 開發(fā)習慣,與團隊成員的技術能力等來分析與選擇。

?

搞清楚了主要的這些點以后,我們就開始針對這些來列舉一些開源的框架,方便大家來學習與使用,讓你快速的搭建一個自己的框架出來,做框架不再是一個很高級的事情,按照自己的想法來定義一個開發(fā)模式,讓自己后期開發(fā)游戲舒服快樂即可。我不主張直接用一個商用的整體框架, 比如GameFramework等, 除非他們和你的項目管理與組織方式非常貼近,否則要根據(jù)自己的項目實際來定制一個適合自己的開發(fā)模式與工作流。但是不可否認,GameFramework, MotionFramework,ET等游戲開發(fā)框架里面還是有很多值得學習的設計理念與習慣,所以作為開發(fā)者我們也要學習相關的一些架構設計與原則方式。

?

2: 商業(yè)框架必備: 當前流行的開源模塊

?

我們不給大家推薦整體的框架,因為這個和你的游戲類型與管理方式,技術儲備等相關。我給搭建推薦幾個主要的模塊框架,這些模塊能很好的處理游戲開發(fā)中的特定問題,同時這些框架模塊也是在商業(yè)項目中經(jīng)過驗證的。

首先是熱更新,現(xiàn)在只要是新項目,我都推薦大家使用基于IL2CPP vm的熱更方式huatuo/HybirdCLR, huatuo現(xiàn)在是途游開源的,HybirdCLR團隊之前在途游,后來做了一個類似的框架HybirdCLR, 所以他們應該是同文同種,都可以用,具體用哪個,可以自己判斷,

我把兩個項目的github地址都放出來:

Huatuo: 途游開源,

https://github.com/tuyoogame/

HybirdCLR: focus creative games(代碼哲學)開源:

https://github.com/focus-creative-games

熱更新基于huatuo/HybirdCLR來進行項目組織與構建。選擇huatuo/HybirdCLR最大的好處幾乎不會影響到正常的Unity開發(fā),你正常的使用Unity開發(fā)就可以了,熱更新偷偷的就可以給你處理了。

?

選好了熱更新模塊以后,接下來就是資源管理模塊,我推薦大家使用途游開源的YooAsset框架, YooAsset框架目前在很多項目中在用,因為也是途游經(jīng)過了商業(yè)驗證后開源出來的,能幫我們節(jié)省很多的開發(fā)時間,同時用起來也非常的方便,他有Edtior模擬器運行模式,單機運行模式,聯(lián)機運行模式。

項目仍然來自于途游開源:

https://github.com/tuyoogame/

熱更框架與資源管理框架一確定,你的游戲開發(fā)框架基本上都不會太差,能達到商用級別。而且這兩個都來自于途游的大廠開源,可以放心的使用。

?

接下來就是游戲數(shù)據(jù)配置表框架,這里的話給大家推薦的是luban與FlashExcel。luban更完善與強大,能處理好{excel(csv,xls,xlsx)、json、bson、xml、yaml、lua、unity ScriptableObject} => {binary、json、bson、xml、lua、yaml、erlang、 custom format}等格式,F(xiàn)lashExcel專門處理配置表格。分別給到大家他們的項目地址:

FlashExcel:

https://github.com/nizhenchao/FlashExcel

luban來自與focus creative games(代碼哲學)開源:

https://github.com/focus-creative-games/luban

3 如何能定制好自己的游戲框架

?

前面我們講過游戲框架的核心就是定義一種針對某種類型項目的開發(fā)的協(xié)作與管理的方式。作為架構師如何能夠定制好自己的游戲框架,我覺得重要的有幾點:

(1) 掌握基本的原理原則與處理方式。雖然很多東西不用我們寫,但是基本的原理原則和使用方式我們要知道,比如打空包,技術原理是如何做的,比如增量更新技術原理是如何做的,比如熱更新的技術原理如何等,這些能夠幫助我們更好的使用與閱讀維護別人寫的底層的庫。為什么很多小伙伴自己用庫,怎么都用不好,看不懂,其實就是知識的儲備量不夠,如果你能了解主流的解決方案與思路,再去看別人寫的源碼,你會發(fā)現(xiàn)開源庫的好處就是別人花了大量的時間做了你要做的工作,而且還不用自己親自動手,前提是你有和作者接近的知識儲備,所以我們要注重我們的基礎知識與基本原理原則的學習與積累。

(2) 搭建商用游戲框架還有重要的一個點就是先學習別人搭建的游戲開發(fā)框架是如何組織管理項目的,它們的設計的優(yōu)點與缺點是什么?適合哪些游戲,哪些項目。很多人可能在公司用GameFramework/MotionFramework等,雖然我不建議大家在沒有搞懂自己的游戲類型與開發(fā)管理方式是否與這類框架本身的理念符合時就盲目的使用開源的游戲框架,而不是自己定制,但是我還是推薦大家學習一些游戲開發(fā)框架的組織方式與設計理念,為定制你自己的開發(fā)流做好一些設計準備。

今天的分享就到這里了,關注我,下一節(jié)分享”Unity如何基于狀態(tài)機來組織驅動游戲邏輯”。

Unity架構師必備開源框架:3天打造大廠商用框架的評論 (共 條)

分享到微博請遵守國家法律
鄂伦春自治旗| 贺州市| 舒城县| 龙海市| 沛县| 绥宁县| 靖远县| 高陵县| 宝兴县| 莆田市| 玉溪市| 漯河市| 鹰潭市| 苏尼特左旗| 南安市| 彭水| 泉州市| 秭归县| 乐东| 文成县| 南雄市| 太湖县| 枞阳县| 天长市| 茂名市| 滦南县| 肇州县| 基隆市| 长葛市| 共和县| 江阴市| 平和县| 裕民县| 乡城县| 遵化市| 灌南县| 兰坪| 金寨县| 阳西县| 保山市| 金昌市|