推荐一些游戏项目,直接起飞,不看后悔
目录
前言
1、 skynet
开源地址:
项目介绍
学习点:
2、 NoahGameFrame
开源地址
项目介绍
学习点:
3、 kbengine
开源地址
项目介绍:
学习点
4、 cocos2d-x
开源地址
项目介绍
学习点
5、 moleServer
开源地址:
https://gitee.com/akinggw/moleserver
项目介绍:
学习点
6、 一些游戏项目推荐
6.1植物大战僵尸
6.2麻将
6.3游戏服务器框架
6.4 我的武侠世界
6.5 碰碰球
总结
前言
今天看到云驻共创有这样一个题目《有哪些值得学习的国内 c++ 开源项目》,但是因为我最熟悉的是游戏项目,有一定的积累,所以我就把题目范围进行了缩小,,变成有哪些好的开源的国内的游戏项目,希望能对使用C++做游戏的开发同学一些帮助,从这些优秀的项目中汲取精华使用到自己的项目中,做出优秀的游戏项目,废话不多说,开始吧。
1、 skynet
开源地址:
https://github.com/cloudwu/skynet
项目介绍
Skynet 是国内大名鼎鼎的游戏引擎,是网易的云风大神开发的,在那个引擎很少的年代,这算得上是开天辟地的。能做的如此优秀,属实不易。
Skynet提供了一个简洁、稳定、高效、高可用的分布式服务开发框架。
Skynet是一个轻量级通用的服务器基础框架
Skynet是基于C与Lua的开源服务端并发框架,使用单进程多线程Actor模型。
Skynet服务器支持10K+客户端接入和处理
Skynet当前规模是8K多行的C代码和2K多行Lua代码,实现了一个多线程高并发的在线游戏后台服务框架,提供定时器、开发调度、服务扩展框架、异步消息队列、命名服务等基础能力,支持Lua脚本。
Skynet是一个轻量级网络服务器架构而非完整的游戏服务端,它是服务端的最底层框架,和游戏业务相关的服务都是基于此框架之上开发的。其功能只是管理好服务(加载和调度)和服务之间的调用(请求和响应)。
学习点:
可以学习如何C++和Lua的混合编程,学习到Actor设计模式的实现
2、 NoahGameFrame
开源地址
https://github.com/ketoo/NoahGameFrame
项目介绍
曾经和NF的作者在同一家公司工作过,所以对引擎有种亲密感,是很不错的引擎,也表示表和属性的同步,用起来非常舒坦。
NoahGameFrame(NF)是一个轻量级,快速,可扩展的分布式插件框架。
- 易于使用,面向界面的设计
- 一个可扩展的插件框架,使您的应用程序快速,轻松地运行
- 一种干净,整洁的设计和稳定的发动机,已用于多种商业产品
- 高性能Actor模型(由Theron提供)
- 事件和属性驱动,使您的业务清晰易懂
- 基于标准C ++开发,确保跨平台支持
- 现有的C ++和C#游戏客户端,用于快速开发
- 跨平台支持
学习点:
项目NF受到OGRE和Bigworld的极大启发。可以从中学习到服务端的设计思想.
3、 kbengine
开源地址
https://github.com/kbengine/kbengine
项目介绍:
一款开源的MMOG游戏服务端引擎, 仅Python脚本即可简单高效的完成任何游戏逻辑(支持热更新), 使用配套客户端插件能够快速与(Unity3D、UE4、OGRE、HTML5、等等)结合形成一个完整的客户端。 引擎使用C++编写,开发者无需重复的实现游戏服务端通用的底层技术, 将精力真正集中到游戏开发层面上来,稳定可靠并且快速的打造各种网络游戏。
Kbengine 已经收到千万投资进行了商业化开发,是非常优秀的服务端引擎,曾经在一个项目中用过,用python作为脚本开发,性能高,开发效率高,底层C++代码值得学习。
学习点
项目使用C++作为底层进行开发,应用层使用python作为脚本,可以学习C++和Python的混合编程,同时学习到MMO的经验
4、 cocos2d-x
开源地址
https://github.com/cocos2d/cocos2d-x
项目介绍
Cocos2d-x 是一款国产的开源的手机游戏开发框架,基于MIT许可证发布。引擎核心采用C++编写,提供C++、Lua、JavaScript 三种编程语言接口,跨平台支持 iOS、Android 等智能手机,Windows、Mac 等桌面操作系统,以及 Chrome, Safari, IE 等 HTML5 浏览器。
cocos2d-x引擎的历年代表作有《我叫MT Online》《捕鱼达人》《大掌门》《刀塔传奇》《放开那三国》《全民飞机大战》《欢乐斗地主》《开心消消乐》《保卫萝卜》《梦幻西游》《大话西游》《神武》《问道》《征途》《列王的纷争》《热血传奇》《传奇世界》《剑与家园》《乱世王者》《传奇霸业》等
学习点
Don’t say so Much.
对于想要做客户端引擎开发的同学,可以学习cocos2d-x,开源且用户多
5、 moleServer
开源地址:
https://gitee.com/akinggw/moleserver
项目介绍:
一个C++编写的基于websocket协议的游戏服务器框架,运行于linux上,底层主要基于epoll,性能强劲,登录验证,注册,游戏框架基本全部做好,您只需要添加游戏逻辑就可以了。
已经主要实现以下功能:
- 用户注册,验证,登录,更改信息;
- 游戏服务器可以通过网站进行监控,配置和管理;
- 游戏服务器已经实现了登录验证,桌子管理,掉线管理,掉线重回管理,定时器等等框架该有的功能都有了;
- 游戏逻辑框架,游戏中该用到的接口,如果进入房间,离开房间,掉线处理,掉线重回后处理,定时器处理等等都已实现
- 网站后台管理功能,已经实现对玩家,游戏,服务器的管理和监控
- 机器人功能,在数据库配置好机器人后,机器人就可以使用了
- 玩家无限制分成代理分销,充值,退款等功能
学习点
Moleserver 内置了一些现成的模块,能快速开发游戏,可以在代码中学习模块的设计,可进行功能迁移。
6、 一些游戏项目推荐
6.1植物大战僵尸
https://gitee.com/GITLZ/PlantsVsZombies
使用c++基于Cocos2dx V3.16 开发的植物大战僵尸游戏
6.2麻将
https://gitee.com/xiyoufang/cocostudio-mahjong
基于Cocos2d-X 3.17 跨平台单机麻将,商业级麻将算法、AI算法
6.3游戏服务器框架
https://gitee.com/ylmbtm/GameProject3
跨平台的多进程游戏服务器框架,网络层分别使用SocketApi, Boost Asio, Libuv三种方式实现, 框架内使用共享内存,无锁队列,对象池,内存池来提高服务器性能。
6.4 我的武侠世界
https://gitee.com/lsylovews/ChivalrousMan
《我的武侠世界》使用cocos2d-x编写的一个简单的回合制网游,游戏内容和传统的回合制网游相似。 在游戏中玩家可以接取任务, 完成任务获得奖励升级提升自己的实力
6.5 碰碰球
https://gitee.com/lsylovews/CollisionBall
一个联网的趣味性小游戏,碰碰球,在游戏中通过操纵自己的小球吃掉随机产生的食物,不断壮大自己,或者撞击其它玩家,通过自己的体力和大小之间的关系和他人的体力与大小之间的关系决定谁是胜利者,主要学习物理引擎的使用。
总结
C++ 项目的入手难度略高,这是C++这门语言决定的,但是C++对机器性能的压榨还是让人趋之若鹜,对于有更高要求的游戏来说,现在很多游戏公司仍然在使用C++ 的服务端,虽然历史的趋势不会改变,越来越多的游戏服务器用Java和Nodejs 开发,但是这些优秀的项目依然在发光发热,对于依然坚守C++的同学依然值得学习。
推荐一些游戏项目,直接起飞,不看后悔相关推荐
- 电计算机服务里没有扫描,电分扫描前你一定要知道这些,不看后悔
原标题:电分扫描前你一定要知道这些,不看后悔 下面有图像处理专家-刘轩铭为您介绍在进行电分扫描时应注意那几点: 温馨提醒广大网友朋友 如果您在其它任何地方看到与本文内容相同相似.冒名套用.且没有署名刘 ...
- 推荐8个值得每天一看的网站,值得收藏起来!
给大家推荐8个值得每天一看的网站,可以解决很多问题,话不多说,直接上干货! 1.ewant ewant是由国立交通大学.上海交通大学.西安交通大学.西南交通大学.北京交通大学共同合作发起的开放教育平台 ...
- Android开发必看知识,不看后悔
Android开发必看知识,不看后悔 打包为大家奉上最实用最给力的资源,不看你绝对后悔. 最强大的UI特效 奇艺高清UI界面源代码 http://www.eoeandroid.com/thread-1 ...
- opencv立方体的画法_【不看后悔!】最详细的立方体透视变化及画法讲解
原标题:[不看后悔!]最详细的立方体透视变化及画法讲解 初学素描的小伙伴们 不知道大家画石膏立方体的时候 有哪些困难呢 下面小编联合素描老师匡鹏智 从最基础为大家仔细讲解立方体 希望能为大家解难! 立 ...
- 推荐了这些好书,你看过几本啦?
推荐了这些好书,你看过几本啦? 我们为什么需要读书? 困惑时,书能为我们指明方向 低落时,书赋予我们前行的力量 外界变化时,书带我们寻找不变的是什么 ...... 在上周的好书征集话题互动里 100多 ...
- 生存曲线 p值 python_超详细讲解生信SCI中的生存曲线作图,不看后悔系列
原标题:超详细讲解生信SCI中的生存曲线作图,不看后悔系列 在线及个性化精美Kaplan-Meier生存曲线的绘制 大家好,我是阿琛.俗话说,是骡子是马拉出来溜溜.在肿瘤研究中,一个基因的研究价值高不 ...
- [不看后悔啊!]史上最为全面的Autocad施工图视频教程 看完就能成为装修设计师 http://www.51zxw.net/study.asp?vip=1573837
[不看后悔啊!]史上最为全面的Autocad施工图视频教程 看完就能成为装修设计师 http://www.51zxw.net/study.asp?vip=1573837 沈阳设计:http://hom ...
- 联想台式主机拆机教程_联想 aio 520 拆机教程 ,全网最完整版,细节不放过,不看后悔...
联想 aio 520 拆机教程 ,全网最完整版,细节不放过,不看后悔 2020-03-28 16:25:37 10点赞 16收藏 5评论 你是AMD Yes党?还是intel和NVIDIA的忠实簇拥呢 ...
- enc易能变频_ENC易能变频器故障主修不看后悔
产品品牌 凌科自动化科技有限公司 产品型号 技术精湛,收费合理 生产城市 江苏常州 发货城市 时效短 供货总量 100 最小起订 1 产品单价 300 计量单位 台 ENC易能变频器故障主修不看后悔采 ...
- 优秀管理者必看--你的下属跳槽的八大征兆,你注意到了吗?(超级准,不看后悔的。。。)
优秀管理者必看--你的下属跳槽的八大征兆,你注意到了吗?(超级准,不看后悔的...) 优秀管理者必看--你的下属跳槽的八大征兆,你注意到了吗?(超级准,不看后悔的...) 眼下随着经济形 ...
最新文章
- sql server 海量数据速度提升:SQL优化-索引(11) 【转】
- 参考答案:01 线性方程组
- nginx 反向代理和负载均衡策略实战案例
- css选择器(css Selectors)的语法分析
- nfs:client mount成功,但是进入目录时出现Permission denied
- EF Core 小技巧:迁移已经应用到数据库,如何进行迁移回退操作?
- 如何解决Win11系统蓝牙鼠标经常掉线
- 电脑中计算机右键管理无法打开,win8系统计算机右键菜单中的管理打不开怎么办...
- svg标签的CSS3动画特效 - 经典特效
- C语言随笔小算法:取出一个任意整数的每一位数值
- vue-awesome-swiper 的安装和使用
- 电气工程cad实用教程电子版_电气工程CAD教程-PDF
- 单反拍摄技巧:利用直方图曝光
- 计算机专业毕业了 还要不要参加培训班
- 安卓一些错误经验积累
- axios和ajax怎么读,axios, ajax和fetch的比较
- 集万千优点于一身的Haproxy集群,你还不了解?
- 架构设计文章读后感6
- 2014华中首届手游创意大赛
- Modesim仿真出现vlog-2388问题