jjk_by
jjk_by
2017-12-04 05:28

求教,Unity3D 如何 截屏高于分辨率 的 texture

  • 高分辨率
  • 截屏
  • unity3d
    比如用unity3D导出的应用跑4K分辨率,想截取左下4分之一屏的 保存一张 texture,分辨率也为4K,有没有大神知道??
        使用ScreenCapture.CaptureScreenshot() 虽然能整体放大数倍,但是无法设置具体的截图范围和大小。
         类似以下方法可截取自己设定的位置和大小,但是大小无法大于当前应用运行 的分辨率。
    IEnumerator SavePhoto(Rect rect,string name)
    {
                yield return new WaitForEndOfFrame();
                Texture2D t = new Texture2D(rect.width, rect.height);
        t.ReadPixels(new Rect(0, 0, rect.width, rect.height), 0, 0, false);
        //距X左的距离        距Y屏上的距离  
        // t.ReadPixels(rect, 0, 0, false);  
        t.Apply();
        byte[] byts = t.EncodeToJPG(100);

        File.WriteAllBytes(path_Save + name + ".jpg", byts);
        }
  • 点赞
  • 回答
  • 收藏
  • 复制链接分享

1条回答

为你推荐

换一换