最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

unity實(shí)現(xiàn)按住鼠標(biāo)選取區(qū)域截圖

 更新時(shí)間:2020年04月16日 11:40:20   作者:LixiSchool  
這篇文章主要為大家詳細(xì)介紹了unity實(shí)現(xiàn)按住鼠標(biāo)選取區(qū)域截圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了unity按住鼠標(biāo)選取區(qū)域截圖的具體代碼,供大家參考,具體內(nèi)容如下

private int capBeginX;
private int capBeginY;
private int capFinishX;
private int capFinishY;
 
public Image showImg;
 
// Use this for initialization
void Start () {
    
  }
  
  // Update is called once per frame
  void Update () {
    if (Input.GetMouseButtonDown (0)) {
      Vector3 mousePos = Input.mousePosition;
      Vector2 beginPos = new Vector2 (mousePos.x, mousePos.y);
      capBeginX = (int)mousePos.x;
      capBeginY = (int)mousePos.y;
    }
 
    if (Input.GetMouseButtonUp (0)) {
      Vector3 mousePos = Input.mousePosition;
      Vector2 finishPos = new Vector2 (mousePos.x, mousePos.y);
      capFinishX = (int)mousePos.x;
      capFinishY = (int)mousePos.y;
      //重新計(jì)算截取的位置
      int capLeftX = (capBeginX < capFinishX) ? capBeginX : capFinishX;
      int capRightX = (capBeginX < capFinishX) ? capFinishX : capBeginX;
      int capLeftY = (capBeginY < capFinishY) ? capBeginY : capFinishY;
      int capRightY = (capBeginY < capFinishY) ? capFinishY : capBeginY;
 
      Rect rect=new Rect(capLeftX,capLeftY,capRightX,capRightY);
      StartCoroutine( Captrue (rect));
    }
  }
 
  IEnumerator Captrue(Rect rect){
 
    int t_width = Mathf.Abs (capFinishX - capBeginX);
    int t_length = Mathf.Abs (capFinishY - capBeginY);
 
    yield return new WaitForEndOfFrame ();
    Texture2D t = new Texture2D(t_width , t_length,TextureFormat.RGB24, true);//需要 
     正確設(shè)置好圖片保存格式 
    t.ReadPixels(rect, 0, 0, false);//按照設(shè)定區(qū)域讀取像素;注意是以左下角為原點(diǎn)讀取 
    t.Apply(); 
    byte[] byt = t.EncodeToPNG(); 
    File.WriteAllBytes(Application.dataPath + Time.time + ".png", byt); 
 
    Sprite target = Sprite.Create (t, new Rect(0, 0, t_width, t_length), Vector2.zer);
    showImg.sprite = target;
  }

小編為大家分享一段Unity實(shí)現(xiàn)截屏功能的代碼,供大家參考:

public class ScreenShot : MonoBehaviour 
{

  void OnScreenShotClick()
  {
    //得到當(dāng)前系統(tǒng)時(shí)間
    System.DateTime now = System.DateTime.Now;
    string times = now.ToString();
    //去掉前后空格
    times = times.Trim();
    //將斜杠替換成橫杠
    times = times.Replace("/", "-");

    string fileName = "ARScreenShot" + times + ".png";
    //判斷該平臺(tái)是否為安卓平臺(tái)
    if (Application.platform == RuntimePlatform.Android)
    {
      //參數(shù)依次為 屏幕寬度 屏幕高度 紋理格式 是否使用映射
      Texture2D texture = new Texture2D(Screen.width, Screen.height, TextureFormat.RGB24, false);
      //讀取貼圖
      texture.ReadPixels(new Rect(0, 0, Screen.width, Screen.height), 0, 0);
      //應(yīng)用截屏
      texture.Apply();
      //將對(duì)象序列化
      byte[] bytes = texture.EncodeToPNG();
      //設(shè)定存儲(chǔ)到的手機(jī)文件夾路徑
      string destination = "/sdcard/DCIM/Screenshots";
      //如果不存在該文件夾
      if (!Directory.Exists(destination))
      {
        //創(chuàng)建該文件夾
        Directory.CreateDirectory(destination);
      }
      string pathSave = destination + "/" + fileName;
      File.WriteAllBytes(pathSave, bytes);
    }
  }
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C#并查集(union-find)算法詳解

    C#并查集(union-find)算法詳解

    本文詳細(xì)講解了C#并查集(union-find)算法,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • C#結(jié)合JS實(shí)現(xiàn)HtmlTable動(dòng)態(tài)添加行并保存到數(shù)據(jù)庫(kù)的流程步驟

    C#結(jié)合JS實(shí)現(xiàn)HtmlTable動(dòng)態(tài)添加行并保存到數(shù)據(jù)庫(kù)的流程步驟

    在 Web 應(yīng)用項(xiàng)目中,實(shí)現(xiàn)一對(duì)多錄入的數(shù)據(jù)管理功能是一項(xiàng)常見(jiàn)的應(yīng)用,因此可以實(shí)現(xiàn)一個(gè)相對(duì)輕量化的設(shè)計(jì)實(shí)現(xiàn)表格的錄入,為保證功能的可用性、界面友好性,本文給大家介紹了C#結(jié)合JS實(shí)現(xiàn)HtmlTable動(dòng)態(tài)添加行并保存到數(shù)據(jù)庫(kù),需要的朋友可以參考下
    2024-12-12
  • c#求兩個(gè)數(shù)中最大值的方法

    c#求兩個(gè)數(shù)中最大值的方法

    這篇文章主要介紹了c#求兩個(gè)數(shù)中最大值的方法,需要的朋友可以參考下
    2014-02-02
  • C#串口編程實(shí)例代碼

    C#串口編程實(shí)例代碼

    這篇文章主要為大家詳細(xì)介紹了C#串口編程實(shí)例代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • C#中EventWaitHandle的用法小結(jié)

    C#中EventWaitHandle的用法小結(jié)

    EventWaitHandle是C#中用于線程間同步的一個(gè)類,它提供了對(duì)共享資源的訪問(wèn)控制,以及線程間的同步機(jī)制,本文就來(lái)介紹一下EventWaitHandle用法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-04-04
  • c#中LINQ的基本用法(二)

    c#中LINQ的基本用法(二)

    這篇文章介紹了c#中LINQ的基本用法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下的相關(guān)資料
    2022-04-04
  • 最新評(píng)論

    汉寿县| 凤山市| 西峡县| 晋中市| 毕节市| 康马县| 衡水市| 望奎县| 黑河市| 宜昌市| 寻乌县| 烟台市| 泗阳县| 闽侯县| 社旗县| 翁牛特旗| 琼海市| 那坡县| 通城县| 桂东县| 和林格尔县| 巴林左旗| 东城区| 营山县| 高淳县| 福海县| 佛坪县| 和平县| 南开区| 安化县| 丹东市| 读书| 江永县| 永宁县| 中方县| 玛多县| 闽侯县| 德庆县| 城步| 连州市| 额敏县|