当前课程知识点:游戏程序设计 > 第十六章 《游戏支撑系统 》 > 16.5 游戏支撑系统(5) > 16.5 游戏支撑系统(5)
这合服
合服大家也能理解
合服是什么游戏运营的后期比如一年以后
玩家就衰减的差不多了
里面的玩家很小够不成游戏生态了
这时候我如果把新玩家倒进来呢
新老差距太大
新玩家赶不上
老玩家也不会带着小肉鸡去玩
所以这时候一般需要进行合服
所以需要两个生命周期差不多
与游戏生态差不多的两个服合在一起
一般在合服里面有两种操作
一种就是基于数据库的
把数据库给它合到一起去
这个你毕竟要读数据库
还有一个现在都基本将基于映射的
就是调一个映射表就可以了
合完服以后
老服的数据还在老服里
新服的数据还在新服里
这样合服时间可能几分钟就可以完成
最大的好处就是基于第三种
基于映射的操作以后
这种合服是可把控的
不要怕犯不了错犯错可以重新来一遍
云游戏
这个是我在深圳培训的时候
那个云游戏的部门
一定要让我讲
现在云游戏
为什么现在大家都在去发展
在腾讯
至少两个部门再去竞争去发展
再去赛马再去跑
在谷歌大家都也都看到谷歌在两年以前
就开始做云游戏了
这是基于什么我们接下来有一个技术
叫5g
可能未来两年就要普及了5g带来什么呢
低延时
把现在几十毫秒的延时
可以收到几毫秒十毫秒以内
再一个就是
网络传输速度异常快
就像你读硬盘一样就这么快
你的手机
你在运营手机的时候
你可以完全理解你背后那个服务器
就可以传到你这上面来你的体验上
不会感觉到任何延时
这就是为什么
会出发触发这么多云技术出现
那这个就很好运营在运营上面
比如说我给的这个呢其实
就是运营
运营同学想做一个什么呢
以后再宣传一个游戏的时候
不要让它下3G或者5g的这个游戏了
扫码直接玩儿三分钟
你觉得好玩儿你就接着下
你不好玩儿你就不要下了
体验最精彩的一个点
另外一个点第三点呢其实就是
因为大家知道三A游戏对不对
需要很多的时间很多的钱
但最最重要的是三A游戏的美术的效果
在手机上是做不出来的
为什么因为现在的手机
只相当于八年前的主机
CPU水平就是内存的水平
并且
因为发热的问题
它不能达到真正的它所标榜的
那个赫兹为什么呢
现在大家可以知道你们PC上的那个
CPU或者是PSCPU
那个CPU
是由几十
几十瓦的功率高的时候上百瓦
这如果要在手机上
一分钟就可以煎鸡蛋了啊!
所以手机要降频
所以说很多时候是满足不了的
那有了云游戏
整个这种渲染就完全可以在后台去做了
然后再给你传输到你的前面来
所以呢给大家体验一个出行
我觉得大家基本上就可以理解
这个技术的一个意义
这东西可能都没有上线了
再讲一下跨服
这跨服我就不多讲了大家可能都能理解
其实
未来想做产品的同学就记住一点
你让你的技术同学要解决
要去做跨服
我再说就是搂出一点
就一定要解决数据一致性
数据不能丢不能多存储
这是它的核心要解决的核心问题
无论它多复杂的
结构它都是为了解决这个问题
数据一致性
敏感词过滤这件事情大家也能理解
在这是要符合我们的国情
这个敏感词过滤要很实时的
很可能会有一个敏感实践就告诉你
你要屏蔽你不能去有你的服务器上
打开一个文本添加一个数据delete一下晚了
在腾讯后台
它有一整套的一个业务管理模块
它可以
直接升级任何一个游戏动态的
它所使用的这个算法因为时间关系
我们也不去讲了
如果有人有兴趣也可以去了解
多匹这种匹配算法
多模匹配算法
最后给大家讲一个技术点
就是视野的处理
视野处理学名叫aoi
这块儿是你在
所有的游戏里基本上都要遇到的
就是当你在这个
这个世界上场景里走动的时候
别人怎么感知到你的
你怎么发现别人的
一个场景我们可以理解
经常可能会有几千人扎堆在一起
比如一个大世界游戏的
这个大世界游戏比如说
楚留香大家玩就这种
可能一个场景里会扎堆
非常非常非常非常多的人
如果一个玩家要进来你就要
要就要把这些人要收一下全给它的话
这个就是价太高了
可能每次都要在这几千人里去搜
所以最原始的解决方案呢
大家一般都会把这个
把这个空间给它划分
对不对
一般我们要划分成九宫格
九宫格代表什么意思
就是当一个玩家站在这里以后
它只需要关心与它周边的那九个格子
也有16宫格或25宫格的
那我给大家演示一点
演示一个大家就能明白啊因为原理很简单
假设一个玩家
从一个场景切到了这个场景站在这里了
大家发现没发现
它会通知这个通知这个人
通知这个人这个里面的
这里我格子里边所有的人要通知它
你能看到这么多人
因为这个格式基本上代表着你六瓶或者
九瓶以上
因为更远的你没必要告诉他因为来不及
你要告诉他这六个格子
打勾
你要去你要去告诉他
告诉他同时你要告诉这些人
我来了
大家会发现一个规律
就这个视野越大这个网络的流量
是呈几米增长的
平方级别的
所以为什么所有到你后期的优化
所有的优化都要是围绕着
这个视野来做
都要围绕视野来做
假设这个玩家往前走一步
站到这里了
发生什么事情
通知这些新的玩家
我来了对不对
我来了告诉这些玩家他走了
它动了
再走一步咱们再走一步
就会发现要通知这些玩家我来了
要告诉这些玩家我走了因为九宫格移开了
这样整个移动就围绕着你这个
你这个为中心去转
这就是比较经典的九宫格
但网上也有一些十字链表
还有一个网易开源的项目
做的都挺好都能解决实际问题
这样我想我想讲的是
这个九宫格在端游时代是很好用的
在手游时代
不行了
为什么呢
因为现在对于美术的品质非常高
你的同屏客户端
根本就画不出来50个人以上
甚至20个以上都画不出来
还有个问题
有的人的手机很高端
它想看到很多
有的就用500块钱手机
它最多只能让他看到十个
就开始有区分了你像特别是安卓机
它们的性能差距会非常大
所以其实这背后里面
你不能把这里面就是真正咱们做手游的时候
你就不能把九宫格里再给他
你还要做事业视野列表的切分
其实这个切分的算法我就不具体讲了
就是很麻烦因为它要保证几个特性
第一要对称
我能看到你你就能看到我
否则我砍你的时候你不知道谁在砍你
这不行的
第二你要防抖动
什么叫防抖动
你不能因为有几个人玩家来了
让客户端那边来回频繁变动
因为是对于客户端
非常好它的性能的
因为它要重新创建一个角色把它渲染起来
对不对
所以
防抖动和和这个稳定性是非常重要的
第三个特性是满足
客户端的最大容载
就是我提到的
高性能让他多看到一些
低性能让他少看到一些
但是前面所有的条件要
这三个条件是要并列满足
所以这个算法会非常的复杂
所以到游戏公司里面大家晋级时候
就特别爱PK
这个东西
A变种B变种c变种
容灾
容灾的话
我们就不过多的去讲了吧
因为这个东西可能就是学后台同学的一个
一个东西但是非常重要
是你的知识体系里面
很重要的一块
就是你必须在未来自己发展上
必须要讲你对于这件事情的
容灾的考虑
但我刚才对DB讲了三条
每个模块都要考虑容灾
给大家推荐一个Tars
Tars是一个基金会
一个现在一个海量服务开发框架
就是腾讯开源的
这个
特别特别的好用
你可以
一键就可以创建一个server
特别是这种Rpc的调用会非常方便
就我刚才讲的日志体系
对于多语言的知识全在里面
它最最重要的是他给你提供了个平台
你这个服务器整个的运营运转的状态
你不用去如果你觉得这个
这个数据很私密你不用存储在云上
你可以自己看到
调用量是多少失败率是多少是不是
如何发布
所有的整个这套这个平台
都给你去搭建好了
如果以后大家再去做项目无论是大项目
还是小项目
你们都可以使用
-1. 1什么是游戏(上)
--选择题
-1.2 什么是游戏(下)
--选择题
-1.3 游戏是如何开发出来的
-1.4 游戏引擎(上)
-1.5 游戏引擎(下)
--单选题
-1.6 如何成为一个游戏开发者
--多选题
-2.1 什么是游戏服务器
--单选题
-2.2 游戏服务器的和分类发展
--单选题
-2.3 核心技术和实现难点
--单选题
-2.4 设计原理与方法论
--单选题
-3.1 三维坐标系统
--多选题
-3.2 向量与运算
--单选题
-3.3 矩阵与线性变换
--双选题
-3.4 四元数
--3.4 四元数
--多选题
-4.1 游戏循环概述(上)
--多选题
-4.2 游戏循环概述(下)
--单选题
-4.3 《无尽之路》的实现
--单选题
-4.4 支撑游戏的功能
--选择题
-4.5 支撑游戏的机制与系统
--多选题
-5.1 基本介绍
--5.1 基本介绍
--单选题
-5.2 随机数生成器
--单选题
-5.3 随机数分布与应用
--单选题
-6.1 什么是游戏玩法开发
--单选题
-6.2 建立愿景 Vision
--单选题
-6.3 划定边界 Scope
-6.4 迭代 Iteration
--单选题
-6.5 迭代 Iteration+抛光Polish
--单选题
-7.1实时图形渲染管道 宏观渲染系统
--单选题
-7.2实时图形渲染管道 应用阶段
--单选题
-7.3实时图形渲染管道 几何阶段
--单选题
-7.4实时图形渲染管道 光栅化阶段
--单选题
-7.5实时图形渲染管道 总结 参考
-8.1 物理回顾1
--单选题
-8.2 物理回顾2
--单选题
-8.3 材质 1
--8.3 材质 1
-8.4 材质 2
--8.4 材质 2
-8.5 材质3
--8.5 材质3
-8.6局部光照
--8.6局部光照
--单选题
-8.7 全局光照
--8.7 全局光照
--单选题
-9.1 动画介绍
--9.1 动画介绍
--多选题
-9.2 游戏动画介绍
-9.3 动画技术类型
--多选题
-9.4 骨骼蒙皮动画
--多选题
-9.5 动画流水线
--多选题
-9.6 动画前沿趋势
--多选题
-10.1 .基本概念
--多选题
-10.2 设计目标
--多选题
-10.3 传输数据分析
--多选题
-10.4 常用同步方案 1
-10.4 常用同步方案 2
-10.4 常用同步方案 3
-10.4 常用同步方案 4
--多选题
-10.5 方案对比
--多选题
-11.1 基本图元
--单选题
-11.2 图元距离(上)
--单选题
-11.2 图元距离(下)
--单选题
-11.3 图元相交测试+ 其他几何方法
--单选题
-12.1 著名物理引擎介绍
--单选题
-12.2 物理引擎原理(上)
--单选题
-12.3 物理引擎原理(下)
--单选题
-12.4 游戏中的物理体
--单选题
-12.5 物理引擎使用入门
--单选题
-13.1开发语言
--13.1开发语言
--单选题
-13.2 开发环境
--单选题
-13.3 腾讯开发组件介绍
--单选题
-13.4 网络通信+业务框架介绍
--多选题
-14.1 进程间通信(上)
-14.2 进程间通信(下)
-14.3 通信格式
-14.4 并发模型
-14.5 超时处理
-14.6 大系统小做(上)
--多选题
-14.7 大系统小做(下)
-14.8 架构层面的技术支持(上)
--单选题
-14.9 架构层面的技术支持(下)
-14.10 分布系统的关键能力
--多选题
-15.1 游戏人工智能综述
-15.2 人工智能在游戏中主要方法 上
--多选题
-15.3人工智能在游戏中主要方法 (下)
-15.4 人工智能在游戏制作中的应用领域1
--多选题
-15.5 人工智能在游戏制作中的应用领域2
-15.6 人工智能在游戏制作中的应用领域3
--多选题
-15.7 人工智能在游戏运营中的应用实践(上)
-15.8 人工智能在游戏运营中的应用实践(下)
--多选题
-16.1 游戏支撑系统(1)
--单选题
-16.2 游戏支撑系统(2)
--单选题
-16.3 游戏支撑系统(3)
--单选题
-16.4 游戏支撑系统(4)
--单选题
-16.5 游戏支撑系统(5)
-17.1 游戏逻辑服务器(上)
--单选题
-17.1 游戏逻辑服务器(下)
-17.2 外挂与反外挂(上)
-17.2 外挂与反外挂(下)
--多选题
-18.1运行环境
--18.1运行环境
--多选题
-18.2物理部署
--18.2物理部署
--多选题
-18.3系统的可运维性
--多选题
-18.4运维案列分析
--多选题