2 using System.Collections;
7 public GameObject OVcamera;
8 public string path =
"";
9 private bool takeScreen =
false;
16 device = GetComponent<SteamVR_TrackedController>();
17 device.Gripped += Trigger;
31 Debug.LogWarning (
"Start Capture Screen");
32 StartCoroutine(TakeScreenShot());
38 string fileName(
int width,
int height)
40 return string.Format(
"screen_{0}x{1}_{2}.png",
42 System.DateTime.Now.ToString(
"yyyy-MM-dd_HH-mm-ss"));
45 public IEnumerator TakeScreenShot()
47 Debug.LogWarning (
"Capture Screen");
48 yield
return new WaitForEndOfFrame();
50 Camera camOV = OVcamera.GetComponent<Camera>();
52 RenderTexture currentRT = RenderTexture.active;
54 RenderTexture.active = camOV.targetTexture;
56 Texture2D imageOverview =
new Texture2D(camOV.targetTexture.width, camOV.targetTexture.height, TextureFormat.RGB24,
false);
57 imageOverview.ReadPixels(
new Rect(0, 0, camOV.targetTexture.width, camOV.targetTexture.height), 0, 0);
58 imageOverview.Apply();
59 RenderTexture.active = currentRT;
63 byte[] bytes = imageOverview.EncodeToPNG();
66 string filename = fileName(Convert.ToInt32(imageOverview.width), Convert.ToInt32(imageOverview.height));
69 System.IO.File.WriteAllBytes(path, bytes);