zoukankan      html  css  js  c++  java
  • 一步一步学习Unity3d学习笔记系1.4单服模式架构

    单服模式更适合做手游,只有一个服务器,在程序中通过代码模块来实现各功能,而不是物理模块划分。

    登录模块实现,账号数据处理,

    用户模块,处理角色权限处理,

    匹配模块,匹配战斗

    好友模块,负责好友管理

    战斗模块,是游戏的核心模块,

    还有很多诸如符文,皮肤,技能模块,装备模块,地图模块等等

    其中技能模块是在用户选择英雄的时候没加载技能,装备在战斗模块中购买装备,其实每个模块可以单独分开开发,通过结构初始化需要的模块。

    目前做手游,和页游大部分是单服,单服用户数达到几百人就需要重开新服,一个区几千人,单服也能应付,现在的电脑配置,性能也不影响,以前用C++开发,现在用C#来做开发速度比C++快十多倍,C++ bug太多了,调试起来不是很方便,课程也是选用C#来做的。

    ,现在的很多页游,手游多是借助平台,用户登录客户端,通过发送用户信息发送平台服务器,平台服务器返回一个登录码给客户端,客户点发动登录token到服务器

     

    接平台的话协议都是http协议,不会是其他协议

    注意:黄色的部分是程序实现模块,非物理模块。

    网游分线模式和单服模式类似

     

    在战斗模块中有地图模块,  一般况下就是一个游戏玩家人数多了的时候画质达到一个数量级画质太多了服务区能够应付,客户端渲染太多,会出现卡死现象,这样就出现了分线,

    将同一张地图中分线,将不同的用户分到不同的场景中,减少服务器,玩家用户太多的话,因服务器消息需要群发,同步给服务器添加很多消耗,单服分线只在地图中分线,减少每个区域的同步数据,都可以减少服务器的压力。

  • 相关阅读:
    方法 —— 参数传递、重载、命令行参数与可变参数
    Float型 与 Double型数据的存储方式
    交换两个变量的值
    【LeetCode-数组】螺旋矩阵(顺时针打印矩阵)
    【LeetCode-链表】二叉树展开为链表
    【LeetCode-动态规划】零钱兑换 II
    【LeetCode-树】将有序数组转换为二叉搜索树
    【LeetCode-树】从上到下打印二叉树 III
    【LeetCode-链表】相交链表
    【LeetCode-字符串】字符串转换整数 (atoi)
  • 原文地址:https://www.cnblogs.com/imeiba/p/5767625.html
Copyright © 2011-2022 走看看