【世界聚看点】截图!长按保存分享!Cocos Creator
一种3D截图方案背景参考TRUESPACEwithCocos技术分享[1]中的动态生成海报的介绍,以及作者的支持。实现一个
背景一种3D截图方案
参考 TRUE SPACE with Cocos 技术分享[1]中的动态生成海报的介绍,以及作者的支持。实现一个长按保存分享截图的方案。
(资料图)
效果在微信浏览器中预览效果如下
环境Cocos Creator 3.7.1Web 浏览器原理原作者讲的非常清楚,只需要按照以下步骤实现即可。
3D相机生成一个RT 赋予给2D精灵摆上一些二维码等UIUI相机再生成一张RT读取RT中的数据,传给 canvascanvas 生成图片数据传给 Image适配Image对象大小位置视频录了一段操作视频[2]供大家参考。
代码这段代码的截图功能是按照高度适配的方式写的,如有其他需求,可自行修改相关逻辑。仅供大家参考学习。
import{_decorator,Component,Node,Camera,RenderTexture,view,UITransform,log,game,screen,NodeEventType}from"cc";const{ccclass,property}=_decorator;@ccclass("CaptureImage")exportclassCaptureImageextendsComponent{@property(Camera)copyCamera:Camera=null!;@property(Node)targetNode:Node=null!;@property(Node)captureBtn:Node=null!;@property(Node)closeBtn:Node=null!;rt:RenderTextureprivate_image:HTMLImageElement_canvas:HTMLCanvasElement=null!;_buffer:ArrayBufferView=null!;start(){log("欢迎关注微信公众号【白玉无冰】https://mp.weixin.qq.com/s/4WwCjWBtZNnONh8hZ7JVDA")this.rt=newRenderTexture();this.rt.reset({width:view.getVisibleSize().width,height:view.getVisibleSize().height,})this.copyCamera.targetTexture=this.rt;this.captureBtn.active=true;this.closeBtn.active=false;this.captureBtn.on(NodeEventType.TOUCH_END,this.copyRenderTex,this)this.closeBtn.on(NodeEventType.TOUCH_END,this.clearCapture,this)}privatecopyRenderTex(){constwidth=this.targetNode.getComponent(UITransform).width;constheight=this.targetNode.getComponent(UITransform).height;constanchorPoint=this.targetNode.getComponent(UITransform).anchorPoint;constworldPos=this.targetNode.getWorldPosition();this._buffer=this.rt.readPixels(Math.round(worldPos.x-width*anchorPoint.x),Math.round(worldPos.y-height*anchorPoint.y),width,height);if(!this._canvas){this._canvas=document.createElement("canvas");this._canvas.width=width;this._canvas.height=height;}else{letctx=this._canvas.getContext("2d");ctx.clearRect(0,0,this._canvas.width,this._canvas.height);}letctx=this._canvas.getContext("2d")!;letrowBytes=width*4;for(letrow=0;row其他 最近写文偏笔记的形式,主要是记录一下代码,下次要用的时候再翻出来。希望对大家有所帮助。
参考资料[1]
TRUE SPACE with Cocos 技术分享:https://forum.cocos.org/t/topic/146459
[2]视频:https://www.bilibili.com/video/BV1w84y1N7XQ
往期精彩:
3DUI Cocos Creator
三渲二 Cocos Creator
零代码实现面片效果(UV滚动,帧动画) Cocos Creator
游戏开发资料合集,2022年版
点击“阅读原文”查看精选导航
“点赞“ ”在看”鼓励一下▼
关键词:
[ 相关文章 ]
一种3D截图方案背景参考TRUESPACEwithCocos技术分享[1]中的动态生成海报的介绍,以及作者的支持。实现一个
东方网记者柏可林4月14日报道:最近,辰山植物园水生植物园廊架、山阳桥边河岸、矿坑花园、药用植物园廊架
2023年,黔西南州市场监督管理局聚焦餐饮外卖、婚宴、学校食堂等重点领域,扎实开展制止餐饮浪费专项行动,
燕京啤酒今日开盘上涨5 56%,公司昨日晚间发布业绩预告,预计一季度净利6200万元-6600万元,同比增长7076 7
猎聘13日发布的2023年一季度就业趋势大数据报告显示,受疫情冲击的养老服务、交通、旅游等行业开始复苏,养
数智前瞻本报记者林春霞 日前,科技界人士呼吁叫停ChatGPT训练,用6个月时间制定相关约束,同时,多国呼
1、山东省面向社会人员认定中等职业学校、中小学、幼儿园教师资格的范围是:未达到国家法定退休年龄,具备
今天来聊聊关于应用心理学师范类将来能当老师吗,应用心理学师范的文章,现在就为大家来简单介绍下应用心理
4月13日,毕节市优化营商环境工作新闻发布会举行。会上,毕节市营商办、市投资促进局负责人向媒体介绍了毕
波兰想当东欧盟主!欧洲新金融中心,行吗?俄罗斯可是摔了大跟头,波兰,东欧,德国,欧洲,欧盟,美国,俄罗斯,乌
北京时间4月13日讯,据知名媒体人导演我躺哪报道,辽宁盘锦和中国香港将组建职业球队参加新赛季的NBL(全国
达志科技(300530)04月13日在投资者互动平台表示:尊敬的投资者,您好,公司第一条新能源电池生产线于2021
【双良节能:一季度净利同比预增289%到330%】财联社4月13日电,双良节能公告,预计一季度净利润4 7亿元-5 2亿
观点网讯。4月13日,厦门建发股份有限公司发布了2022年面向专业投资者公开发行可续期公司债券(第一期)202
遭4家“真央企”联合打假,国恒基业控股集团有限公司(以下简称“国恒基业”)究竟有何来头?4月8日,中核
成龙的《龙马精神》周三报收816万,夺得冠军,开画6天,累计票房突破1亿元大关,成为2023年第15部成功破亿
13日上午,天津津门虎举行了新赛季的壮行会。主教练于根伟也明确表示,球队已经做好了准备,尽最大努力为这
天风证券(601162)04月13日在投资者关系平台上答复了投资者关心的问题。
据美国全国广播公司12日报道,健康研究组织凯泽家族基金会4月11日发布的报告显示,在美国,超过一半的受访
中国银河证券股份有限公司岳铮近期对三人行进行研究并发布了研究报告《2022年年报点评:持续拓展优质客户,
[ 相关新闻 ]
Copyright 2015-2022 时代医院网 版权所有 备案号: 联系邮箱: 514 676 113@qq.com