Unity如何在任意区域截屏创建Sprite
发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,这篇文章主要介绍Unity如何在任意区域截屏创建Sprite,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Unity截取全屏静帧的方法较为简单这里不作讨论,指定区域截图用到的最
千家信息网最后更新 2026年11月04日Unity如何在任意区域截屏创建Sprite
这篇文章主要介绍Unity如何在任意区域截屏创建Sprite,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
Unity截取全屏静帧的方法较为简单这里不作讨论,指定区域截图用到的最主要的方法就是读取屏幕像素:
// // 摘要: // Read pixels from screen into the saved texture data. // // 参数: // source: // Rectangular region of the view to read from. Pixels are read from current render // target. // // destX: // Horizontal pixel position in the texture to place the pixels that are read. // // destY: // Vertical pixel position in the texture to place the pixels that are read. // // recalculateMipMaps: // Should the texture's mipmaps be recalculated after reading? public void ReadPixels(Rect source, int destX, int destY, [DefaultValue("true")] bool recalculateMipMaps); [ExcludeFromDocs] public void ReadPixels(Rect source, int destX, int destY);为了方便调用,写一个扩展协程如下:
public static IEnumerator CutSpriteFromScreen(this RectTransform boxMin, RectTransform boxMax, UnityActioncomplete) {var sp = new Vector2(boxMin.position.x, boxMin.position.y);var temp = new Vector2(boxMax.position.x, boxMax.position.y);Vector2Int size = new Vector2Int((int)(temp.x - sp.x), (int)(temp.y - sp.y));//判断截图框是否超出屏幕边界if (sp.x < 0 || sp.y < 0 || sp.x + size.x > Screen.width || sp.y + size.y > Screen.height)yield break;//等待当前帧渲染结束,此为必须项yield return new WaitForEndOfFrame();Texture2D texture = new Texture2D(size.x, size.y, TextureFormat.RGB24, false);texture.ReadPixels(new Rect(sp.x, sp.y, size.x, size.y), 0, 0, false);texture.Apply();complete(Sprite.Create(texture, new Rect(Vector2Int.zero, size), Vector2.one * .5f));}
调用如下:
StartCoroutine(BoxMin.CutSpriteFromScreen(BoxMax, (x) => GameData.Instance.PlayerData.Bag.FragCutIcon = x));
效果展示:
可以直接将拼好的芯片图截取后保存起来方便在其他界面展示安装效果,省去了每一界面都划格子重新读取数据计算一遍;
因为事实上只有在设置芯片的页面才需要单独对每块芯片进行细致操作,其他位置可以简化为展示一张缩略图;
当芯片的安装发生变化时,同步更新该缩略图即可。
以上是"Unity如何在任意区域截屏创建Sprite"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
芯片
区域
内容
屏幕
截图
效果
方法
界面
篇文章
细致
事实
事实上
价值
位置
像素
兴趣
参数
只有
小伙
小伙伴
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网佳科技有限公司
湖南永感互联网科技有限公司
互联网科技社
北京互联网科技有限公司
互联网科技公司电话
安徽鑫晟辉互联网科技
上海喔噻互联网科技
腾讯科技 互联网女皇
丰台科技园 互联网
科技互联网公司logo
掌上梦互联网科技
互联网科技公司有哪些
科技大学互联网专业好不好
昭通云南众福互联网科技有限公司
未来五年的互联网科技
深圳艾果互联网通讯科技
互联网营销推广黑科技
上海万顺科技互联网有限公司招聘
承德科技产业互联网平台
宁波允成互联网科技有限公司
深圳恒合互联网络科技有限公司
关于新基建和互联网科技
互联网科技与金融科技
互联网科技的发展
互联网科技ppt模板
兼蜜互联网科技
互联网科技视频素材
隆华科技工业互联网
山东星卡互联网科技有限公司官网
互联网科技的前景