当前位置: 首页 > news >正文

H5游戏性能优化系列-----cpu相关优化

cpu优化主要是优化cpu使用率,帧率平稳性(卡帧,长耗时任务),主要从以下几个方面优化

  • 设置合适的帧率。根据游戏类型设置合适的帧率,比如slg,回合制这种类型游戏一般开30帧,mmo等即时战斗的或者对流畅度有很高要求的可以开60帧。
  • 帧同步与状态同步的抉择。一般来说状态同步会比帧同步的前后端消息量大,也就说消息同步压力更大。但是状态同步前端实现起来比较简单,只用根据对应消息更新状态即可。
  • 分帧处理。对复杂逻辑进行分帧处理,比如后端返回的大量消息,存入消息队列中分帧处理,避免在同一帧处理大量的消息。
  • 将长任务利用setTimeout等api划分成多个短任务(八股文叫做微任务与宏任务),其实也算是另类分帧吧。
  • 使用对象池管理需要频繁创建和销毁的对象。
  • 在能使用worker的平台上,将耗时的任务放在worker中执行,比如zlib解压缩,图片解码等。
  • 在不能使用纹理压缩的平台上,png和jpg等原始图片的解码是很占用cpu的,可以使用二进制的方式加载图片,然后使用png和jpg解码库在worker中解码图像,或者使用createImageBitmap(非所有平台支持)。
  • 微信小游戏的ios平台,因为不支持jit导致js代码执行效率底下,cpu使用率会持续高位,如果内存优化到位的话,可以开启高性能模式。
  • JS代码混淆。注意这里不是minify等压缩工具,而是像js-deobfuscator这种加密混淆工具,混淆程度严重影响js代码执行效率,混淆之后代码会变大,所以如果不是发行方要求尽量不混淆,如果非要混淆设置合适的混淆策略。
  • Spine和龙骨动画的使用。这种动画在场景上一旦多起来了就很卡,即使spine的骨骼、顶点、网格、图集都优化的很好,也顶不住数量多了之后就会卡(很多用Spine或者龙骨作为角色模型和技能动画的都有类似问题,后面会单开一起讲讲Spine能优化的点)。

 

对于h5游戏,分析cpu相关性能指标我们一般用Chrome开发者工具的Performance,抓取一段时间内的游戏运行状态进行分析。

通过帧率的波形图,重点关注波峰位置,Task时间线的红色任务或者任务右上角带红色角标的任务,点击之后在下面的CallTree页签查看函数执行堆栈,找到函数执行中耗时的地方进行优化。

http://www.hskmm.com/?act=detail&tid=6098

相关文章:

  • IPA 混淆实战 IPA 混淆、IPA 加固、ipa 文件安全与成品包防护全流程指南
  • 实用指南:javaweb HTML基本介绍/常见标签
  • 文档处理控件Aspose.Words教程:在 C# 中将 Markdown 转换为 PDF
  • TCP协议与wireshark
  • docker容器mysql导入sql文件
  • ObjectSense 包与模块:代码组织的艺术
  • IDE工具RAD Studio 13 Florence重磅发布:64 位 IDE + AI 组件全面升级!
  • C# 批量修改数据库
  • Job for network.service failed because the control process exited with error code.
  • 负荷聚类及其在MATLAB中的实现
  • 移动安全框架(MobSF)静态分析入门指南
  • 列表项点击,逻辑梳理
  • CRMEB标准版PHP批量发货功能深度解析
  • 数学之美 第一章读后感
  • 【SPIE出版】第九届交通工程与运输系统国际学术会议(ICTETS 2025)
  • 模型上下文协议(Model Context Protocol,MCP)
  • 大华设备视频平台EasyCVR视频分析设备平台双轨视频数据存储方案全解读
  • AI音乐创作新突破:ACE-Step模型开启放克音乐智能生成时代
  • 【ABSR出版】第二届农业工程与生物学国际研讨会(ISAEB 2025)
  • 符号执行技术实践-求解程序密码
  • 博客皮肤
  • 低轨卫星跟踪对星方式
  • 开源中国社区发布AI赋能2.1版本:打造企业级私有化知识中枢新范式
  • PL/SQL 性能优化指南
  • jdbcType-java 类型
  • 支配对
  • macOS Sonoma 14.8 (23J21) 正式版 ISO、IPSW、PKG 下载
  • DamiBus v1.1.0 发布(给单体多模块解耦)
  • 最小环 Floyd 算法 无向图的最小环问题
  • macOS Sequoia 15.7 (24G222) Boot ISO 原版可引导镜像下载