一、截图
之前写了一版截图的细节,当时用的是unity5.x的版本,当前用的是unity2018了,如有疑问,及时评论,看到回复。
之前的版本的链接:
Unity3d截图方法合集
现在做了一些更新:
1.1 方法不需要写到onPostRender里
写成协同,直接调用即可
代码如下:
/// <summary>
/// 2.区域截屏
/// </summary>
IEnumerator CaptureAreaScreenshot(Rect rect)
{
yield return new WaitForEndOfFrame();
// 先创建一个的空纹理,大小可根据实现需要来设置
Texture2D screenShot = new Texture2D((int)rect.width, (int)rect.height, TextureFormat.RGB24, false);
// 读取屏幕像素信息并存储为纹理数据,
screenShot.ReadPixels(rect, 0, 0);
screenShot.Apply();
// 然后将这些纹理数据,成一个png图片文件
byte[] bytes = screenShot.EncodeToPNG();
string filename = Application.dataPath + "/ScreenshotArea" + System.