Я хочу сделать скриншот, используя другую камеру в Unity.Я прочитал пример проекта и смотрел это видео.
И теперь я могу сделать снимок экрана и сохранить его где-нибудь при использовании Unity Editor.Но когда я встраиваю его в свои устройства Android, изображения становятся полными шума.
Вот мой код:
void Awake()
{
myCamera = GetComponent<Camera>(); // Camera is disable in the scene
myCamera.targetTexture = new RenderTexture(Screen.width, Screen.height, 24);
}
public void takeScreenShot(){
myCamera.enabled = true;
StartCoroutine(Capture());
}
IEnumerator Capture(){
yield return new WaitForEndOfFrame();
Texture2D result = new Texture2D(myCamera.targetTexture.width, myCamera.targetTexture.height, TextureFormat.RGB24, false);
myCamera.Render();
RenderTexture.active = myCamera.targetTexture;
Rect rect = new Rect(0, 0, myCamera.targetTexture.width, myCamera.targetTexture.height);
result.ReadPixels(rect, 0, 0);
byte[] byteArray = result.EncodeToPNG();
string filePath = Application.persistentDataPath + "/ScreenShot.png";
System.IO.File.WriteAllBytes(filePath, byteArray);
Debug.Log("ScreenShot saved to: " + filePath);
Destroy(result);
myCamera.enabled = false;
}