欢迎您来到河北乾申信息技术有限公司官网!
客服电话: 0311-66566671
项目案例
王者荣耀游戏性能之延时优化
来源:乾申教育 作者:乾申教育 发布时间: 2019-03-09 0 次浏览

背景:《王者荣耀》是由腾讯游戏开发的一款运营在AndroidIOS平台上的MOBA类手游,属于多人联机在线竞技类游戏,于20151126日在AndroidIOS平台上正式公测,上线以来受到广大手游玩家的热爱,但是经常出现卡顿现象,对游戏性能有一定影响。

登录阶段

4.png

问题分析:与一般游戏相同,在启动阶段APP会检查版本是否有更新,这些过程都是HTTP过程,端口为808080APP在获取实际地址后,再次并发多个请求进行更新包下载,下载的3分钟内,数据传输为HTTP;更新过程是一个HTTP多进程下载过程。打开游戏前几分钟的更新、签到等过程全部是HTTP过程,游戏前几分钟的更新、签到等过程全部是HTTP过程,伴随大量DNS过程,未建立80/8080/443端口外的TCP连接。

解决办法:针对王者荣耀的初始阶段可以采用已有的网页或视频优化手段,评估方法按照网页和HTTP下载评估即可。

开局阶段

5.png

问题分析:在游戏等待界面,有一些80端口的TCP握手和拆链,没有传数据,估计是游戏自身的一些测试,涉及了多个IP,但没有游戏连连接,游戏建立的TCP长连接,心跳包和实时UDP数据都来自其中的某一个其中,TCP长连接除了部分数据传输,每隔3s进行一次类似心跳包的发、收和反馈过程,收发数据包大小相同为56字节。

解决办法:游戏开局后,HTTP过程基本没有,数据交互采用TCP连接与UDP流的方式,对于UDP分组的优化目前还没有专门的feature;但UDP作为普通数据业务,像修改SRDRX周期,DNSTCP等措施都能一定程度的减少时延。

战斗阶段

6.png

问题分析:从玩家的角度及投诉的情况看,玩家更加注重游戏中的时延,游戏中时延优化归根到底是对上述一条TCP流及两条UDP数据传输的优化,优化的结果直接反映到检测网络的心跳包时延上;而这3条数据流主要特点是小包密集型,同一IP服务器UDPTCP同时进行,游戏过程TCPUDP端口随机。

7.png8.png

解决办法TCP数据与服务器交互和心跳包处于同一个流,UDP数据交互在同一服务器上,心跳包客观衡量了游戏交互时间。从UE侧周期的心跳时延,开启QCI3的预调度功能,能够有效降低空口时延,对游戏时延优化较大。


案例总结:王者荣耀在游戏过程中不卡顿,最低要求时延必须<150ms,该背景下无线时延点全程时延的比例就较大,优化空口时延对游戏的整体感知将效果显著。


王者荣耀优化调整参数一览表


9.png


上一篇:无