有时候要重复用某一个场景的某一个角度,都过去好几步了结果总不能再把已经打乱的场景物体再移动回去吧。so~智慧的我完成了伟大的偷懒。截图保存,什么时候要看,直接上图片以假乱真棒棒哒~

当然这个功能还能用在很多地方,所以有拓展了一下鼠标自定义范围截图并保存在了文件夹下。然后就华丽丽的出现了下边这些代码。

using UnityEngine;
using System.Collections; public class jietu : MonoBehaviour { int w, h;
Vector3 v1, v2;
void Update()
{
//按下鼠标拖动直至松开鼠标划定范围,截图
if (Input.GetMouseButtonDown())
{
v1 = Input.mousePosition;//鼠标按下位置~
}
if (Input.GetMouseButtonUp())
{
v2 = Input.mousePosition; //鼠标抬起位置~
//计算鼠标划定范围的长和宽~~
w = int.Parse(Mathf.Abs(v1.x - v2.x).ToString());
h = int.Parse(Mathf.Abs(v1.y - v2.y).ToString());
StartCoroutine(GetCapture());
}
}
IEnumerator GetCapture()
{
//等待所有的摄像机跟GUI渲染完成
yield return new WaitForEndOfFrame(); Texture2D tex = new Texture2D(w, h, TextureFormat.RGB24, false);
//----------------------------------------------------------------------------计算区域----------------------------------------------------
float vx = (v1.x > v2.x) ? v2.x : v1.x; //取较小的x,y作为起始点
float vy = (v1.y > v2.y) ? v2.y : v1.y;
tex.ReadPixels(new Rect(vx, vy, w, h), , , true);
//-----------------------------------------------------------------------------------------------------------------------------------------
byte[] imagebytes = tex.EncodeToPNG();//转化为png图 tex.Compress(false);//对屏幕缓存进行压缩
System.IO.File.WriteAllBytes(Application.dataPath + "/hehe.png", imagebytes);//存储png图 }
}

最新文章

  1. ORACLE Linux以及 Unbreakable Enterprise Kernel
  2. SQL SERVER Transactional Replication中添加新表如何不初始化整个快照
  3. inheritableStatics 与statics类
  4. Error && MFC
  5. Java开发中经典的小实例-(随机数)
  6. Windows下安装Elasticsearch
  7. 在Firefox中通过AJAX跨域访问Web资源---
  8. 关于String的hashCode
  9. [LeetCode 119] - 杨辉三角形II(Pascal's Triangle II)
  10. 在MFC程序中使用XML文件配置工具栏
  11. `define、parameter、localparam三者的区别
  12. 从集合的无序性看待关系型数据库中的"序"
  13. js中数值类型相加变成拼接字符串的问题
  14. 创建java项目思路
  15. Centos 7 安装 Redis 3.2
  16. 【CUDA并行程序设计系列(1)】GPU技术简介
  17. BadUSB测试记录
  18. python16_day25【crm】
  19. win7下VS2010编译python3
  20. python——动态类型简介

热门文章

  1. SSL 证书格式普及,PEM、CER、JKS、PKCS12
  2. ConcurrentHashMap 结构 1.7 与1.8
  3. Mac 系统添加右键功能菜单--新建 office,文档等
  4. UINavigationController+FDFullscreenPopGesture全屏回滑手势阅读理解
  5. ubuntu 18.04 上安装 docker
  6. java 多线程小记
  7. selenium webdriver 等待元素
  8. .net使用rabbitmq安装操作
  9. idea 添加 阿里代码规范
  10. Codeforces Round #584 - Dasha Code Championship - Elimination Round (rated, open for everyone, Div. 1 + Div. 2)C