日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

后端游戏引擎调研-2021.07

發(fā)布時間:2024/8/1 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 后端游戏引擎调研-2021.07 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、Redis的消息同步

簡單的可以做websocket,支持有限

https://zhuanlan.zhihu.com/p/107109334

二、Unity自身插件

Network組件 實現(xiàn)狀態(tài)同步

1.Transform同步

2.發(fā)射子彈與減血的同步

3.動畫的同步

Multiplayer 服務(wù)

中繼服務(wù)器;負責(zé)玩家之間的連接更加穩(wěn)定、可靠

介紹

https://docs.unity3d.com/cn/current/Manual/UnityMultiplayerSettingUp.html

Unity’s Multiplayer Service is the easiest way to set up real-time, networked games for Unity. It’s fast to implement and highly customizable. Unity-provided servers and matchmaking services ensure that your players can easily find and play with each other.

案例

《Apex英雄》24天從0到5000w

成本

您可以免費獲得20CCU(并發(fā)用戶)(專業(yè)版的為200)。如果需要更多,我們將收取0.49美元的費用來支付基礎(chǔ)設(shè)施的費用(中繼服務(wù)器),并取消這個限制。

這費用用來支付您所使用的帶寬

三、商業(yè)引擎

ETKBEngineSkyNet
技術(shù)棧客戶端服務(wù)器共用C#
支持很多C#新特性,語法簡潔、高效
底層架構(gòu)C++
邏輯層Python實現(xiàn)的MMOG游戲服務(wù)器框架
底層架構(gòu)C
邏輯層Lua作者自述該框架是服務(wù)器框架的框架
服務(wù)器架構(gòu)特性雙端ECS支持
Actor模式支持
類守望先鋒架構(gòu)
2.0版本開始服務(wù)器端支持ECS
基于實體定義的服務(wù)器對象管理概念簡潔明了
基于 Actor 模式的開源分布式并發(fā)框架
作者唐海,經(jīng)歷不明柯標(biāo),開源中國站長云風(fēng),Lua領(lǐng)域大神
跨平臺能力較難,與Unity和C#語言緊耦合可支持Unity、UE4、Cocos等多平臺項目通過Protobuf對接,不直接支持跨平臺
文檔和案例完善度5.0開始加入教程
沒有專門文檔有官方案例
文檔比較成熟
案例相對豐富已經(jīng)被電魂網(wǎng)絡(luò)收購,
英文文檔, 有中文翻譯
商業(yè)游戲養(yǎng)不大
天天躲貓貓2(ios2019春節(jié)下載排行19)
?;⑵迮?/td>
很多卡牌、棋牌游戲在用簡悅的陌陌爭霸、食物戰(zhàn)爭等等很多產(chǎn)品在用
熱更支持可熱更改造后可支持服務(wù)端邏輯層熱更,客戶端熱更需要自行實現(xiàn)需要自己開發(fā)的功能較多
網(wǎng)站https://github.com/egametang/EThttps://github.com/kbengine/kbenginehttps://github.com/cloudwu/skynet
引擎開發(fā)語言C#PythonLua
今年累計更新501486
維護頻率2-3天一次,都是大范圍的代碼修改和維護平均每半月一次,主要都是小范圍的修復(fù)bug2-3天一次,更新內(nèi)容較多
數(shù)據(jù)庫MongoDBMongoDB/MySQLMongoDB
參與開發(fā)者3136103
星數(shù)4.6k4.5k10.4k

四、其他小眾商業(yè)引擎

pomelo

網(wǎng)易開源的框架,支持分布式, 周邊完善

一個用于Node.js的快速,可擴展的分布式游戲服務(wù)器框架

https://github.com/NetEase/pomelo

NoahGameFrame

幾月c++支持c#/lua,是一個輕量級,快速,可擴展的分布式插件框架,基于Bigworld的思想,可用作MMO RPG / MOBA游戲旖旎情

https://github.com/ketoo/NoahGameFrame

代表做全民無雙

pitaya

基于golang,可伸縮的分布式游戲服務(wù)器框架

使用的技術(shù)比較先進 ETCD實現(xiàn)服務(wù)發(fā)現(xiàn) NATS GRPC實現(xiàn)rpc可以docker部署, 國外公司TFG Co 開源項目

https://github.com/topfreegames/pitaya

zooba appstroe排行很高的moba、吃雞類游戲

goworld

用Golang寫一個分布式可擴展、可熱更的游戲服務(wù)器

GoWorld代碼:https://github.com/xiaonanln/goworld

Pinus

Pinus是基于node.js的高性能,分布式游戲服務(wù)器框架。它包括基礎(chǔ)的開發(fā)框架和相關(guān)的擴展組件(庫和工具包),可以幫助你省去游戲開發(fā)枯燥中的重復(fù)勞動和底層邏輯的開發(fā)。 Pinus不但適用于游戲服務(wù)器開發(fā), 也可用于開發(fā)高實時web應(yīng)用,它的分布式架構(gòu)可以使Pinus比普通的實時web框架擴展性更好。

http://pinus.io/zh-cn/introduce.html

Leaf

Leaf 是一個由 Go 語言(golang)編寫的開發(fā)效率和執(zhí)行效率并重的開源游戲服務(wù)器框架。Leaf 適用于各類游戲服務(wù)器的開發(fā),包括 H5(HTML5)游戲服務(wù)器。

Leaf 的關(guān)注點:

  • 良好的使用體驗。Leaf 總是盡可能的提供簡潔和易用的接口,盡可能的提升開發(fā)的效率
  • 穩(wěn)定性。Leaf 總是盡可能的恢復(fù)運行過程中的錯誤,避免崩潰
  • 多核支持。Leaf 通過模塊機制和 leaf/go 盡可能的利用多核資源,同時又盡量避免各種副作用
  • 模塊機制。

https://github.com/name5566/leaf/blob/master/TUTORIAL_ZH.md

五 面臨的問題

1 服務(wù)器運維

docker

https://blog.csdn.net/qq_19646129/article/details/102477071

https://www.cnblogs.com/geekmao/p/7992731.html

https://gitee.com/llsw/docker-skynet

kubernetes(k8s)

主要包括以下幾點:

  • 服務(wù)發(fā)現(xiàn)與調(diào)度
  • 負載均衡
  • 服務(wù)自愈
  • 服務(wù)彈性擴容
  • 橫向擴容
  • 存儲卷掛載
  • 2 熱更

    A. Lua

    SLua、Tolua、XLua

    slua:https://github.com/pangweiwei/slua

    tolua:https://github.com/topameng/tolua

    xlua:https://github.com/Tencent/xLua

    B. ILRuntime

    http://ourpalm.github.io/ILRuntime/public/v1/guide/index.html

    C. 對比

    50萬次的加法運算#

    ILRuntime使用全局變量:UnitTest_Performance50萬 Elapsed time:1050ms, result = 445698416 ,Tick:10527445

    ILRuntime使用局部變量:UnitTest_Performance50萬 Elapsed time:534ms, result = 445698416 ,Tick:5436060

    Unity原生代碼:mono UnitTest_Performance50萬 Elapsed time:1ms, result = 445698416 ,Tick:19900

    xlua中l(wèi)ua:[10:42:43.8636]LUA: cost: 4.00ms

    D. 一些評語

    第一,ILRuntime相對于lua來說還算是比較新興的東西

    第二,很多公司有自成一套的lua框架,不想也不需要使用ILRuntime

    第三,lua熱更新是wow帶起來的,那么大一個ip,大家也都知道,并且信任lua

    但是就如你所說,ILRuntime開發(fā)效率比lua高很多,雖然純計算的話性能不如lua,但是游戲開發(fā)還是邏輯居多,所以長遠來看ILRuntime無疑會越來越流行,如果沒有另外一款牛逼的熱更方案介入 ILRuntime會慢慢的把lua擠出市場。

    E. 網(wǎng)站介紹

    http://ourpalm.github.io/ILRuntime/public/v1/guide/index.html

    https://zhuanlan.zhihu.com/p/260216935

    https://www.jianshu.com/p/495372db2527

    使用ILRuntime來實現(xiàn)熱更新的優(yōu)與劣!

    https://cloud.tencent.com/developer/news/151033

    3 蘋果審核

    對于繞審, 蘋果的態(tài)度是一樣的

    總結(jié)

    以上是生活随笔為你收集整理的后端游戏引擎调研-2021.07的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。