(bug急)微信小游戏基础库6.4官方截图案例在加入子域后截图全透明

微信小游戏基础库6.4(包括真机和开发工具),官方截图案例在加入子域后截图全透明,
问题必现,基础库是其他版本或不加入子域,截图都是正常的。



  • Creator 版本:2.0以上

  • 目标平台: 微信小游戏

  • 详细报错信息,包含调用堆栈:

  • 重现方式:官方example case里的微信截图案例,添加微信小游戏子域,微信基础库6.4上必现(包括真机和微信开发工具)。

  • 之前哪个版本是正常的 :微信小游戏基础库6.2以前

  • 手机型号 :iPhone X 、安卓

似乎无人关注啊,是没人有此需求,没人遇到此问题吗:sweat:

改一下代码,将截图texture画到canvas这里,不使用

document.createElement('canvas')

而是使用

this._canvas = wx.createCanvas();

可以解决全透明的问题

这样改了没用,不是canvas不能创建,而是texture.readPixels()出来Uint8Array,所有像素点的rbga都是0,所以再渲染到canvas的自然也是透明的了。可能是camera的render有bug

我这边测了一下是ok的,就用示例里面的微信截图demo,加上一个子域


camera的render没有bug,你可以将render完的renderTexture拿出来给到一个sprite上面看效果

你可能测试的不是微信基础库2.6.4,4月2号新版微信更新了基础库到2.6.5又可以了。不知道微信未来哪天更新基础库又会出这种问题。对于核心玩法需要频繁生成图片的项目影响还是比较大的,

我是用最新的微信开发者工具,版本库2.6.5,2.6.4 只要加了子域,就会出现全透明,移除子域就正常了, 2.6.3是ok的
@BigBear

同样问题,请问解决了吗

直接用canvas.toTempFilePathSync()省事还方便。

我这边也遇到和楼主一样的问题我这边是基础库2.9.3

我也遇到了 2.9.4

有大佬告诉我怎么解决吗?

大佬 你知道怎么解决这个问题吗 ?我现在基础库是2.9.4

现在这个问题解决了吗?

请教一下, 如果对一个屏幕外的节点进行截图

调用canvas.toTempFilePathSync()这个方法之前,先调用一下camera.render(),透明问题就解决了,不用creator官方的微信截图方案