MMORPG游戏又叫大型多人在线角色扮演类游戏,对技术,美术,策划的要求非常的高,制作一个成功的MMORPG不容易,今天我们从技术的角度来给大家详细的讲解制作一个MMORPG游戏需要储备的哪些技术点。

游戏引擎的选择

目前做MMORPG游戏主流的跨平台(PC+Android+IOS)的3D游戏引擎有Unity和UE4,各自都有比较成功的代表作,技术上都能够实现,UE4赢在渲染效果,Unity赢在使用相对简单。

 

基础知识储备与框架设计

学习一个游戏引擎,要学哪些东西都是有固定规律的,我们总结出来,适合Unity,也适合UE4。

1: 引擎指定的编程语言的学习, 如Unity我们学习C#, UE4我们学习C++

2: 学会引擎基础知识:【项目创建】,【编辑器面板使用】,【3D物体的创建与摆放】【模型角色的导入与显示】,【地形的制作与使用】,【场景光照烘培】【角色动画播放】【粒子特效】【UI界面制作】【事件监听与响应】【物理引擎】【角色导航与地图编辑】【声音播放】【网络连接服务器】【资源管理】【Shader开发】

3: 打造客户端游戏框架:【框架设计思想与开发协作模式制定】【游戏风格与渲染管线定制】【资源管理模块】【日志管理模块】【声音管理模块】【UI管理模块】【网络管理模块】【协议管理模块】【定时器管理模块】【事件订阅与发布】【地图编辑器与寻路导航】【Excel表格数据驱动模块】【AI行为决策树模块】【自动化打包发布与版本管理】【热更新模块】客户端框架把这些模块完成后,框架也就可以了。

二:服务器准备

服务器开发语言的选择

目前做MMORPG游戏服务端的主流编程语言: C++以及它的变种(C++/Lua), Java, Go, C#等。目前这几个编程语言都能实现MMORPG游戏,也有相关的成功案例,从使用来讲C++/Java会更多些,Java生态完整,资料多,也相对简单,招人好招,C++就麻烦些,因为好的C++开发人员真的凤毛麟角。Go资料相对少些,招人不好招,C# 做游戏服务器用的少, Linux平台可能会有坑,毕竟C#是微软出的。

服务端基础知识储备与框架设计

1: 服务端编程语言采用哪个编程语言就学哪个。

2: 服务端的开发基础知识:【Socket网络编程】【Http 网络编程】【数据库开发】【通讯协议json, xml, protobuf】【Mem Cache】【线程通讯与多线程】【进程与进程通讯】

3: 打造高性能高并发的服务端框架: 服务端要支持几万升至几十万人同时在线,对高性能高并发的要求非常高,多核编程又是现在服务器的主流,因此利用多核,基于多进程多线程的服务器框架架构变得非常重要。主要有【多进程多线程高并发的服务器框架】【高并发网络模块与协议模块(通常有主流的库)】【数据库的ORM】【Mem Cache】【日志模块】【定时器模块】【服务模块】【寻路与导航】【AI行为决策树】【AOI】

三 项目开发与联调

这个阶段客户端服务器一起配合,把游戏功能完成好,一般是按照游戏的流程开始。【登录与注册】【角色创建】【准备的穿戴】【背包系统】【商城系统】【任务系统】【游戏地图】【游戏刷怪】【攻击与技能】【怪物与AI】【装备管理】【数值对接】【工会系统】【地图副本】等业务逻辑。

 

四 部署与运营

压力测试与稳定性测试

客户端打包与多平台多渠道发布

服务端云服务器部署,数据库部署,数据库备份,服务器分区部署等。