微信平台上要不要开高性能模式?感觉发热特别严重

不开高性能模式的话,大概玩个5-6分钟手机才会有发热的感觉。但是也不会特别烫。
开了高性能模式,感觉20秒手机就开始热了,1分钟左右就感觉很烫。

但是高性能模式的效果也是挺明显的,就我的游戏来说可以稳定在60帧,很流畅。不开高性能的话也就30-40帧,动画效果多的时候还会卡。

所以大家怎么看?要不要开?开启高性能模式之后该如何做优化?

顺便贴一下我做的游戏的二维码,大家可以体验一下
勇士爱连线小程序码

为什么会有性能瓶颈?用对象池了吗

一个消消乐也要高性能吗

你说的是节点池吗? 用了,而且我这个游戏本身也没有很多节点。不知道为啥发热会那么严重

节点是销毁后创建还是对象复用?挂机就发热还是玩一会发热?

用nodePool复用的,没有销毁。
挂机就会发热,而且发热也挺快的。
另外我开的是 高性能+模式,还不是普通高性能模式

是不是drawcall太高了

面板参数贴出来给大伙瞧瞧 :face_with_monocle:

唉又遇到一个问题,之前一直没注意,不知道怎么搞的我游戏运行时左下角那个profiler面板不见了,找不回来了。问ChatGPT怎么弄它也搞不定,现在还不知道怎么把运行状态数据搞出来 :cry:

打正式包后需要打开面板可以修改build\wechatgame\src\settings.json中debug字段改成true,开发环境功能裁剪打开运行时统计。

纯小白吗哥们

你说的这些我知道哦,功能裁剪、打包时选调试模式,这些都改了。但确实就是不显示profiler, 在浏览器预览没有,在微信开发者工具预览也还是没有。真的奇了怪了

预览查看场景下面有没有PROFILER_NODE

好神奇,玩了几分钟,好热.

用了很多shader吗?
贴一下DC看看?

有的,我日志打印当前scene的children,可以看到是有这个profiler node节点的。但就是不显示

检查了layer和摄像机,这个profiler node的节点就是正常的defaut layer,相机是可以显示的

DC不高,40几个而已。

shader确实用了,没有用很多,但用了一个很大的,

这个连线效果是用shader写的,整个棋盘我放了一个sprite node,用了一张纯白图片。然后在上面画这个紫色的线。 从TS这边把要连线的点的位置传到shader里,在shader里画出来这个紫色的粗粗的线。

但是问题是我试了就算不玩,只是放在那里,也是会变热的。
不玩的时候这个shader是不会被执行的

有点意思,逐步排查吧,开个空场景看看。空场景面板都不显示那就迁移做加法,看看怎么把面板搞没的。

一般shader不会引起发热,更何况是2D的,再复杂也不会有很明显的发热,发热一般内存问题


我关了高性能模式,在微信真机上打开调试,可以用微信的状态数据统计,如左上角显示。
发现DC还是有点高的,100左右。

但是这个数据是非高性能模式下的。开了高性能模式就显示不了这个统计数据了