【发布时间】:2019-03-22 08:27:42
【问题描述】:
如何在拍照后释放 gpu ram 内存 当达到〜1000张照片时,我的计算机卡住了,因为我使用了所有的gpu ram 现在我正在使用下面的代码来创建照片:
IEnumerator takePhoto(字符串文件名) { yield return new WaitForEndOfFrame();
// Debug.Log(gameObject.name + " Save Color Photo");
Texture2D screenImage = new Texture2D(Screen.width, Screen.height);
//Get Image from screen
screenImage.ReadPixels(new Rect(0, 0, Screen.width, Screen.height), 0, 0);
screenImage.Apply();
if(resolution == Resolution.Half)
{
screenImage = Utils.Resize(screenImage, Screen.width / 2, Screen.height / 2);
// screenImage.Apply();
}
//Convert to png
byte[] imageBytes = screenImage.EncodeToPNG();
//Save image to file
System.IO.File.WriteAllBytes(filename + "_scene.png", imageBytes);
}
【问题讨论】:
标签: unity3d