[]使用webgl之后toDataUrl返回黑色的图像
按照
https://stackoverflow.com/questions/12538193/why-does-my-canvas-go-blank-after-converting-to-image
这里的说法,两个方式可用
1. 创建时加入preserveDrawingBuffer,但是,这个参数导致乐视手机崩溃
2. 在每次绘图之后截图,但是laya里哪个函数是绘图?webgl里的renderSubmit?还是哪个?
https://stackoverflow.com/questions/12538193/why-does-my-canvas-go-blank-after-converting-to-image
这里的说法,两个方式可用
1. 创建时加入preserveDrawingBuffer,但是,这个参数导致乐视手机崩溃
2. 在每次绘图之后截图,但是laya里哪个函数是绘图?webgl里的renderSubmit?还是哪个?
没有找到相关结果
已邀请:
要回复问题请先登录
3 个回复
cuixueying
赞同来自:
截图请参考:截图
hhh_DDD
赞同来自:
这片文档,我使用以下代码应该ok
Laya.stage.getChildAt(0).drawToCanvas(100, 100, 0, 0).getCanvas().toDataURL();
但在WebGL的模式下,实现在laya.core.js的20644行,drawToCanvas返回的是pixels:Uint8Array,这东西怎么变成HTMLCanvas?
如果只能变成Texture,那么我需要存盘的问题仍然没有解决,而且我也没找到怎么把Sprite直接画到canvas上的方法
cuixueying
赞同来自:
2、我测试webGL下截屏是没有问题的,而且Laya.stage.getChildAt(0).drawToCanvas(100, 100, 0, 0)返回的是WebGLCanvas,你可以直接按照截屏分享里的Demo去测试,是没有问题的,附件是Demo,你可以测试看下,webGL模式下正常运行
3、(Laya.stage.getChildAt(0) as Sprite).drawToCanvas(100,100,0,0).getCanvas().toDataURL();返回的是base64,你可以把这串base64当作url传给loadImage,也是OK的,请参考以下代码