[LayaAir 1.0]安卓微信小游戏中webgl渲染文字过慢

问题1:首次进入主界面等待时间过长。
问题2:首次滑动panel会间歇性卡顿。
经过断点打印耗时排查得出初步结论:webgl渲染文字整个过程花费太多时间。
请注意一定要在安卓的微信小游戏中测试。pc浏览器,微信自带浏览器测试没有问题。不排除是微信的问题。
我使用的测试机:红米note4x(2017年2月上市的),华为荣耀play(2018年6月上市的)
 
期望结果:
1.确定是微信的问题还是laya的问题又或者是我的代码问题。
2.解决方案。
 
望论坛聚聚们尽快回复!
已邀请:

layabox

赞同来自: 1556087404用户

你们提供的示例中,游戏首次加载后卡顿,是正常的。也是引擎故意优化的结果。为什么会造成这个问题呢。
主要是你们的示例太极端,文字量过大,我们需要把文字进行大图合集处理。而大图合集处理需要时间,这一瞬间当然也会消耗性能。但是,这一瞬间过去了,性能就会大幅提升。我们引擎是基于性能考虑。这是一种优化方案。而且大多数游戏是不可能需要这么大的文字的。
至于你说其它引擎没瞬间卡,而后面没我们流畅,那可能就是他们没做我们这种优化(我猜的,你可以试一下我们canvas模式,canvas模式应该没做优化,和你说的其它引擎效果应该差不多)
 
如果说你们一定要很多文字,我建议你们可以搞个位图字体,把你们比较常用的字,通过位图字体,提前用图集把常用的字生成好,别用我们自动的大图合集功能。这样只是少量稀有的字,就不多了。处理也感觉不到顺间卡,当然,游戏中也可以有很多逻辑处理,比如做一些加载动画遮掩一下,让用户感觉不到卡,等等。方式很多。希望能合理运用好我们优化的优势。
 
另外,就是2.0的文字处理是按批处理,速度也有所提升。可以用2.0的引擎进行尝试。

Aar0n

赞同来自:

已经测试, 有几个问题需要明确一下, 这个项目是否要做成游戏,还是纯文字, 如果不做游戏可以用canvas模式显示文字,
 
下面给一些建议,绕过这个性能, 如果文字是固定的,可以做成图片
如果不能用图片,这些文字到底用了多少个汉字,做成位图字体,也会提高性能。
或者一部分文字,一部分图片。webgl 这个性能不能再提升了,小游戏性能本身就不如网页。

该问题目前已经被锁定, 无法添加新回复

商务合作
商务合作