新资讯:截图!长按保存分享!Cocos Creator
背景一种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年版
点击“阅读原文”查看精选导航
“点赞“ ”在看”鼓励一下▼
关键词:
- 新资讯:截图!长按保存分享!Cocos Creator(2023-04-20 13:09:08)
- 热推荐:2023年的青年,还在吃2019年的文化大粪(2023-04-20 12:55:35)
- 【独家焦点】延边农商行朝阳川支行存款突破8亿元(2023-04-20 12:42:11)
- 信息:敦化农商行:倾力打造老百姓家门口贴心“小银行”(2023-04-20 12:53:46)
- 如何有效地判断出,股票对关键区域的突破,是假突破还是真突破?(2023-04-20 12:58:04)
- 全球报道:延边农商行新华储蓄所存款突破4亿元(2023-04-20 13:05:54)
- 股票越止越损,止损反而更亏损?两招纠正止损误区!(2023-04-20 12:58:43)
- 今日快讯:华工科技:预计800G光模块出货量将在今年下半年快速增长(2023-04-20 12:52:38)
- 世界快消息!如何控制基金的仓位?投资期货有哪些风险?(2023-04-20 12:49:07)
- 2022年iPad和iPad Pro广告壁纸(2023-04-20 12:23:46)
- 金现代创业板再融资审核状态更新为“已问询”(2023-04-20 12:17:51)
- 物价局投诉电话随时可以打吗_物价局投诉电话(2023-04-20 12:24:02)
- 当前速看:长安期货4月20日贵金属报告:美英欧通胀压力仍存,贵金属近月合约或承压运行(2023-04-20 11:59:43)
- 每日热文:郑渊洁发告别书 称维权艰难,不再发表作品(2023-04-20 12:07:04)
- 中信银行合肥分行:服务有温度 帮客户挽回资金损失(2023-04-20 11:42:32)
- 桐城农商银行卅铺支行开展“反洗钱”宣传活动(2023-04-20 12:00:27)
- 观察|险企养老社区走向细分化,旅居式养老业态如何差异化发展(2023-04-20 11:48:01)
- 美国经济状况褐皮书公布 国际金价震荡收涨丨工行连线(2023-04-20 11:56:38)
- 民生证券:给予鼎通科技买入评级(2023-04-20 11:44:32)
- 隆力奇旗下克劳丽公司被执行399万(2023-04-20 11:52:21)
- 天天百事通!特斯拉业绩会要点:优先考虑销量增长而非利润 Cybertruck会在Q3交付(2023-04-20 11:47:09)
- 世界快报:4.20午评|这一现象值得警惕!(2023-04-20 11:57:36)
- 焦点日报:望天门山诗配画简笔画视频 望天门山诗配画简笔画(2023-04-20 11:37:15)
- 世界快消息!自己如何做馒头呢_自己在家做馒头怎么做(2023-04-20 11:23:25)
- 世界简讯:国网甘肃数字化事业部:数字化新平台助力提升后勤服务水平(2023-04-20 11:25:05)
- 当前热文:长安期货4月20日原油报告:俄油减产但西岸大量出口,携手美国加息预期压制油价(2023-04-20 11:02:28)
- 大变局!专家称美元世界储备货币地位正在遭受惊人的崩溃(2023-04-20 11:04:07)
- 安徽宿州杂技演员坠亡事件追踪(2023-04-20 11:17:29)
- 订购的是“华润”送来的是“津巴克” 一商家卖油漆“偷梁换柱”(2023-04-20 11:08:57)
- 【世界时快讯】上海银行业保险业:探索具有上海特色的数据合规实践(2023-04-20 10:52:35)
-
当前速看:长安期货4月20日贵金属报告:美
一行情回顾隔夜国际贵金属期货收盘涨跌不一COMEX黄金期货跌061报20074美元盎司COMEX白...
-
每日热文:郑渊洁发告别书 称维权艰难,不
【郑渊洁发告别书】4月18日,郑渊洁在微博发布告别书,称其原创的知名文学角色被不法商...
-
中信银行合肥分行:服务有温度 帮客户挽回
“快帮我办理转账,我赶时间!”一名50多岁的女士急匆匆来到中信银行一支行网点转账,称...
-
桐城农商银行卅铺支行开展“反洗钱”宣传活
为进一步充分发挥金融机构的宣导作用,增强辖内群众反洗钱意识和自我保护能力,切实保...
-
观察|险企养老社区走向细分化,旅居式养老
“保险+康养”已然成为大型寿险公司的业务标配,而这些险企打造的养老社区也正在走向细...
-
美国经济状况褐皮书公布 国际金价震荡收涨
周三国际金价震荡收跌。国际金价开盘报2004 99美元 盎司,盘中最高触及2008 16美元...
-
民生证券:给予鼎通科技买入评级
民生证券股份有限公司马天诣,崔若瑜近期对鼎通科技进行研究并发布了研究报告《2022年年...
-
隆力奇旗下克劳丽公司被执行399万
天眼查App显示,近日,克劳丽化妆品股份有限公司新增被执行人信息,执行标的399万余元...
-
天天百事通!特斯拉业绩会要点:优先考虑销
财联社4月20日讯(编辑卞纯)周三美股盘后,特斯拉公布了第一季度业绩,马斯克等高管在...
-
世界快报:4.20午评|这一现象值得警惕!
昨夜外盘涨跌互现,整体对A股影响不大。今天上午开盘情况来看,几大指数有所分化,上证...
- 滚动
- 综合
- 房产