《微信小游戏开发者学院》开讲啦!
你是否经常接到用户反馈你的小游戏有体验问题?
你是否知道如何评估小游戏性能?
你是否想优化自己的小游戏性能?
以上三个问题是否已经困扰你很久了
《微信小游戏开发者学院》第二讲-“小游戏性能评测与优化方案”的微信公开课讲师为吕西亚,围绕小游戏性能问题开启一段优化之旅,并首次揭秘小游戏性能评测标准,案例实践齐上阵帮你答疑解惑。
在评论区留下你对测评优化小游戏性能方面的认识和疑问,或者留下你在这过程中难忘的经历吧。
下方是公开课的回放视频:
话题优秀回答者将获得微信正版周边礼品一份,快来参加吧!
*图片仅供参考,实际奖品选择与发放将视官方周边更新与存货情况进行适当调整
*获奖情况将在「社区每周」公告中进行公示
ps:获奖者不要忘记回复社区工作人员私信啦,一定要多回社区看看自己的评论有没有获奖(精选)哦!!
对小游戏性能问题进行定位和解决离不开三个阶段:诊断--评判--解决。
“诊断过程”需要各种工具查看各类性能指标。常用的几款工具分别是PerfDog,微信开发者工具和Chrome Devtools,另外小游戏官方推出了“小游戏云测试功能”,对获取性能数据帮助非常大,再也不用纠结怎么测那么多指标了。
“评判过程”需要将获得各类指标与标准进行对比,来查看性能是否有问题。小游戏官方推出了一套全面的性能评测标准。全面标准见链接,普世标准如下图
“解决过程”就是针对存在的性能问题采用一些解决方案了。
比如有启动性能问题,可以“精简代码包”、“分包加载”、“引擎插件”和“不依赖引擎尽快渲染”。
内存性能问题,可以“动态加载、动态释放、使用对象池、纹理压缩和适当的资源降级,以及根据设备采用不同质量的资源”等多种方式。
CPU的问题就是首先根据javascript profile找到占用CPU很高的热点函数,专门优化这个函数;另外还有减少Drawcall;使用worker多线程,优化算法和游戏逻辑等等;甚至还可以直接使用GPU粒子和GPU资源等,减少渲染时CPU的步骤。
GPU问题减少资源的复杂度(比如降低资源顶点数量和三角面数,减少各种复杂的shader),还可以使用纹理压缩。
写了这么多,有没有一个小礼品可以拿!!!
异名这两天在版本的间隙刚好针对性能做了一次优化,记录的边幅有点长就不帖子下回复了,文章链接👇,有错误的地方请指出
https://developers.weixin.qq.com/community/minigame/article/doc/0000068e30409896719aa88795a413
@微信官方
可以提供视频中运用 worker 进行物理模拟测试的示例吗?
unity开发的游戏,怎么转成微信小游戏呢?是否有大牛解答下?
刚接触小程序开发。结合以前windows桌面开发,我上周刚好优化了一个很小的小程序性能。
总结如下:
1、多线程优化:
每个线程做好线程安全和线程池管理。这个在前端貌似不叫线程,叫worker,刚开始自以为是的以为worker就是桌面开发里面的线程,其实区别还是蛮大的。这个是性能优化关键
2、服务端资源的加载优化:
包括设置各种图片,视频资源的cache-control,和利用cdn提示加载速度。
3、代码逻辑的优化:
功能实现后,重新检查代码,重点检查有循环代码的地方,重新设计逻辑,减少循环次数。调整相关跳出循环的逻辑代码顺序,根据实际使用情况调整相关代码顺序,尽量减少循环次数。
4、重复造轮子,运行轮子的优化
比如需要重复获取某个值,那么这个值直接放入全局变量里,避免多次运行获取方法浪费多余的性能。