一种3D截图方案
背景
参考 TRUE SPACE with Cocos 技术分享[1]中的动态生成海报的介绍,以及作者的支持。实现一个长按保存分享截图的方案。
![d8ce54cdc65be5581100f76234a371bd.gif](https://img-blog.csdnimg.cn/img_convert/d8ce54cdc65be5581100f76234a371bd.gif)
效果
在微信浏览器中预览效果如下
![e3c4df77d786f04dab0f64a0a0de68a7.gif](https://img-blog.csdnimg.cn/img_convert/e3c4df77d786f04dab0f64a0a0de68a7.gif)
环境
Cocos Creator 3.7.1
Web 浏览器
原理
原作者讲的非常清楚,只需要按照以下步骤实现即可。
3D相机生成一个RT 赋予给2D精灵
摆上一些二维码等UI
UI相机再生成一张RT
读取RT中的数据,传给 canvas
canvas 生成图片数据传给 Image
适配Image对象大小位置
视频
录了一段操作视频[2]供大家参考。
代码
这段代码的截图功能是按照高度适配的方式写的,如有其他需求,可自行修改相关逻辑。仅供大家参考学习。