经过测试 3.7.2 以及 3.6.3 均有此情况,3.5.2未出现黑屏
定位到的 director.init() 会清理 first-screen.js 绘制的首屏图片,但是 builtinResMgr.loadBuiltinAssets()
_this3._loadProjectBundles() 以及 加载 launchScene 会花费较长时间,且皆在 director.init() 之后,导致会出现一段时间的黑屏
经过测试 3.7.2 以及 3.6.3 均有此情况,3.5.2未出现黑屏
定位到的 director.init() 会清理 first-screen.js 绘制的首屏图片,但是 builtinResMgr.loadBuiltinAssets()
_this3._loadProjectBundles() 以及 加载 launchScene 会花费较长时间,且皆在 director.init() 之后,导致会出现一段时间的黑屏
我也出现啦
移除嵌入的 first-screen.js 逻辑,用自己的首场景,首场景简单一点,只要个背景图。背景图出现后,再做其它的自定义事情。
副作用好像只有微信小游戏后台的首场景耗时统计的数据很差,其它还没发现
确实是可以的,对脚本进行分析为3处修改点
end注释掉的清理代码对结果无影响,可以在end时清理内存
还没有找到画布被挤到右下角的原因(可能是因为没有设置画布的位置)
找到了另一个解决办法:
通过查看Koei提供的解决方案中的代码。找到了问题所在:
是因为引擎默认提供的高清屏幕的画布适配方案是直接*2,然后再firstscreen中对图片进行进一步的自适应;
而 Koei的方案是将图片的自适应方案放在了game.js中;
所以这里需要对firstScreen中的图片比例进行修改,将原来的 (画布width/图片width)改为1即可,也就是不需要再适应画布。
cc.director.once(cc.Director.EVENT_BEGIN_FRAME, () => {
firstScreen.end();
});
这段代码在安卓小程序上没有问题,但是在IOS上会报错,无法进入游戏,我直接调用 firstScreen.end();就是正常的
小程序是指微信小游戏吗? 我们这边ios android多平台都测试过没出现过报错. 是修改了什么吗? 可以提供相关报错我看看
牛逼。。。。好用
可以理解成使用 3.8 就直接能解决这一黑屏的问题么
是的 解决了哈
赞!!!!