1.全屏幕截图:
ScreenCapture.CaptureScreenshot(fileName);
2.指定区域
Texture2D screenShot = new Texture2D((int)rect.width, (int)rect.height, TextureFormat.RGB24, false);
screenShot.ReadPixels(rect, 0, 0, true);
screenShot.Apply();
byte[] bytes = screenShot.EncodeToPNG();
string filename ;
File.WriteAllBytes(filename, bytes);
如果出错的话,使用携程:
yield return new WaitForEndOfFrame();
WaitForEndOfFrame 和 null 区别:
null 是在 update 和 lateupdate 之间
WaitForEndOfFrame 是在 lateupdate之后,也就是在摄像机和GUI被渲染以及其他函数完成之后才会执行。