当前常见游戏服务器引擎
当前常见游戏服务器引擎
时间:2020-12-08
这里搜罗总结了一些资料,可以作为参考。
要注意,不论使用哪种游戏服务器引擎,都需要了解学习游戏服务器相关概念和知识,大多数游戏服务器引擎仅仅解决最底层的问题,部分引擎还需要二次开发,而游戏的实际服务逻辑往往需要自己从零写起,并且游戏越复杂,需要考虑的问题就越多。
很多游戏项目组,并不使用商业化/开源引擎,而是自己开发一套自研引擎,不在讨论范围内。
本人只用过skynet和pomelo,对其他引擎的描述可能不准确。
一、商业化引擎
bigworld
一款来自澳洲的功能齐全的游戏引擎,主要为MMOG设计。纯商业化引擎。从2002年起出现。价格比较贵,小公司,小游戏就别考虑了。
购买的厂商主要是网易、畅游这样的大厂。
使用引擎的知名游戏主要是《天下贰 》《鬼吹灯OL》《坦克世界》《创世OL》这样的游戏。
官方介绍:
BigWorld MMO Technology Suite是一套完整的技术解决方案,这一方案无缝集成了专为快速高效开发MMOG而设计的高性能服务器应用软件、工具集、高级3D客户端和应用编程接口(APIs)。BigWorld MMO Technology Suite使游戏开发项目避免了未知、昂贵和耗时的软件研发风险,从而使授权客户能够专注于游戏制作这一核心事务。
Photon光子引擎
时间:2003-2020(至今)
Photon引擎是一款实时的Socket服务器和开发框架,快速、使用方便、容易扩展。
服务端架构在windows系统平台上,采用C#语言编写。
客户端SDK提供了多种平台的开发API,包括DotNet、Unity3D、C/C++以及ObjC等。
高级功能使用配套的高级SDK即可开发。聊天和语音等功能也有专门的SDK。
光子引擎已经全面提供Androd, Cocos2d-x, Construct 2, Corona, .NET, Emscripten, iOS, JS, Linux, Mac, PS4, PSV, Switch, Xbox One, Unity3D, UE4, V-Play, Xamarin等多个SDK。
提供光子云开发。(不用操心部署云服务的问题)基础部分免费。
官网:https://www.photonengine.com/
中文站:https://vibrantlink.com/
资源下载:https://vibrantlink.com/resource-links/
服务器下载:https://www.photonengine.com/zh-CN/sdks#server-sdkserverserver
当前版本:v4.0.29.11263
二、开源引擎
skynet
C+lua,国内使用很多,阿里游戏大量使用,据我所闻风之大陆,时下很火的三国志使用的都是skynet。
skynet实现了类似Erlang 的 Actor 模型,它本质上是一个高并发的消息处理框架。
使用skynet意味着很多功能需要二次开发,然后再去开发游戏业务逻辑。(但是社区资料够多)
仅运行在linux上,在windows上无法运行。(因为需要C99编译,而VS对于C99不是100%支持)
lua部分默认使用的是一个修改过的特殊版本,添加了一些功能。(修改配置文件之后也能用官方版本)
开发SLG、MMOG类型等大中型游戏首选。
官网:https://github.com/cloudwu/skynet
更新频率很高。
作者的skynet设计综述
学习和使用都有一定难度,所以网上赞誉的声音和要弃坑的声音都很多。总之如果对C没有一定的理解,就别入坑了。
相关推荐阅读:
Skynet是什么
skynet总体架构
pomelo
基于nodejs,一开始由网易主导开源,之后网易放弃,变成github上的开源项目。
特点就是非常易学,容易上手。适合开发较为简单的游戏服务器。默认支持分布式架构,易于扩展。
定位:
pomelo是一个轻量级的服务器框架,它最适合的应用领域是网页游戏、社交游戏、移动游戏的服务端,开发者会发现pomelo可以用如此少的代码达到强大的扩展性和伸缩性。当然还不仅仅是游戏,用pomelo开发高实时web应用也如此合适, 而且伸缩性比其它框架好。
不推荐将pomelo用于大型的MMORPG游戏开发,尤其是大型3D游戏, 还是需要象Bigworld这样的商用引擎来支撑。
大部分功能是4-7年完成的。2018年之后就几乎没有更新了。
估计网易没有继续深入的主要原因就是发现其性能不足以支撑大型游戏,没法商用,所以放弃了。
火过一段时间,个人认为是小型游戏和web应用首选。
官网:https://github.com/NetEase/pomelo
pinus
可以认为是pomelo的TS版本,原版已经几乎不维护了(2022/11/1)
官网:https://pinus.io/
github: https://github.com/node-pinus/pinus
Scut
Scut游戏引擎是一款免费开源的游戏服务器引擎,适用于开发AVG、SLG、RPG、MMOG等类型的网络游戏。
架构简介:https://github.com/ScutGame/Scut/wiki/Framework
github官网: https://github.com/ScutGame/Scut
更新停止时间:2015年。
KBEngine
也叫comblockengine
一款开源的MMOG游戏服务端引擎,基于c++,使用python开发游戏逻辑。
通过插件,支持与前端引擎u3d、ue4、orge、cocos2djs、godot等进行对接,并写有demo,支持HTML5。
官网:www.comblockengine.com
老官网:kbengine.org
github:https://github.com/kbengine/kbengine
更新较少。
相关阅读资料:基于ComblockEngine+Unity的联机版坦克大战
NoahGameFrame
NF是一款轻量级的,快速的,可扩展的,分布式插件框架。NF很大程度上受到OGRE和Bigworld的启发。
NoahGameFrame (NF) is a lightweight, fast, scalable, distributed plugin framework. NF is greatly inspired by OGRE and Bigworld.
github官网:https://github.com/ketoo/NoahGameFrame
最近仍有更新。
Origin
origin 是一个由 Go 语言(golang)编写的分布式开源游戏服务器引擎。
origin适用于各类游戏服务器的开发,包括 H5(HTML5)游戏服务器。
github官网: https://github.com/duanhf2012/origin
更新较多。
三、可参考引擎
并非大量开发者使用的游戏引擎,可作为开发参考。
regax
nodejs开发。
仿pomelo实现的服务器引擎。https://github.com/regaxjs/regax
简介:https://zhuanlan.zhihu.com/p/114150098
已经9个月未更新了。
当前常见游戏服务器引擎相关推荐
- Wind分布式游戏服务器引擎的实现
Wind Wind是一款面向云的高性能.高效率以及高扩展性的大型分布式游戏服务器引擎.Wind利用Python语言的简洁语法以及丰富的生态库来提高游戏业务的开发效率,针对一些对性能有要求的游戏业务功能 ...
- Wind:一款面向云的分布式游戏服务器引擎
Wind是一款面向云的高性能.高效率以及高扩展性的大型分布式游戏服务器引擎.Wind利用Python语言的简洁语法以及丰富的生态库来提高游戏业务的开发效率,针对一些对性能有要求的游戏业务功能(如实时战 ...
- Scut游戏服务器引擎6.1.5.6发布,直接可运行,支持热更新
1. 增加exe版(console),web版本(IIS)的游戏服宿主程序 2. 增加Model支持脚本化,实现不停服更新 3. 增加Language支持脚本化 4. 修改Sns与Pay Center ...
- 类Photon游戏服务器引擎Matchvs简介
在介绍Matchvs前,先来了解下是什么游戏服务器引擎?虽然很多人可能都听过国外的Photon,但相对于引擎,大家对游戏服务器框架这个概念可能更为熟悉.框架其实就是针对后台通讯部分搭建一个可复用的设计 ...
- Egret与国内首个商业化游戏服务器引擎Matchvs达成深度合作
日前,Matchvs与白鹭引擎(Egret)正式达成合作.双方在市场.产品和服务等方面达成共识,共同锁定H5游戏领域,发布前后端一体解决方案.在此次合作中,Matchvs为白鹭引擎提供后端联网解决方案 ...
- 利用游戏服务器引擎Matchvs开发联网微信小游戏
Matchvs是一款十分易用的游戏服务器引擎,开发者通过SaaS层提供的API,即可完成"就近"节点接入.玩家匹配.游戏数据通信的建立:PaaS提供GS开发框架.托管平台,无需自有 ...
- 游戏服务器引擎Matchvs游戏云第三方绑定教程
众所周知,Matchvs是国内一款专注于移动游戏的游戏服务器引擎.开发者通过接入Matchvs的SDK,即便没有服务器开发人员,也可以轻松完成联网游戏的开发.近期,Matchvs开放了第三方绑定功能, ...
- python游戏服务器框架_有那些比较成熟的开源游戏服务器引擎/框架(编程语言不限)?...
更新,没有看到服务器(逃. 下面仅为游戏引擎和框架推荐,需要的小伙伴简单看一下,正确的答案努力撰写中. 从角色扮演游戏到即时策略游戏,从冒险解谜游戏到动作射击游戏,甚至是只有一兆大小的迷你游戏,都有起 ...
- 游戏服务器引擎的设计(一)介绍游戏服务器部署框架
服务器的架构,根据游戏类型不同大多有:账号服务器.全局服务器.网关服务器.场景服务器.中心服务器.存储服务器,配合其他的服务器(比如日志服,监控服等).传统的游戏是单服模式,现在也有很多的是分布式模式 ...
- 游戏服务器引擎的设计(二)开发游戏服务器底层 及libuv使用
服务器底层,个人任务认为稳定.高效.易用最重要.如果非要排个序的话 稳定 > 易用 > 高效. 我是用的libuv这个库作为基础支持库的.为啥用它,主要是网络库不想自己写了,有现成的最好. ...
最新文章
- javascript的特点
- 直播预告丨6 大趋势,5 种核心能力,证券业数字新基建趋势全面解读
- linux查找文件命令 要查找包含某字符
- LateUpdate、Late、FixedUpdate的意义
- Spring项目中的Netflix Archaius属性
- 黑马Java学习笔记之-----集合框架
- 阿里云物联网平台远程配置功能JAVA 示例参考
- FreeMarker语言概述(1)
- EXT3-fs error和EXT4-fs error小总结
- 关于计算机教育的图表,计算机教育箭头环形图表PPT模版.ppt
- gin 渲染不同目录下的模板(支持多层目录)
- 计算机网络顺口溜,一到十的顺口溜祝福语
- 大规模MIP的精确算法和实现
- 上瘾读书笔记:让用户养成使用习惯的四大产品逻辑
- 期待重磅升级的梅李大梦想城亲子游乐园!第三代黄桥大梦想城先让你一饱眼福!
- iOS——JSONModel数据解析
- JS获取img图片的原始尺寸高度和宽度
- 工业机器人:机电IT融合破局
- 为什么相同资源 IDM 感觉比迅雷快好多?
- 制作自己的CentOS ISO