示例#1
0
 void Update()
 {
     // 2d screenshot input
     if (Input.GetKeyDown(screenshot2DKey))
     {
         RenderTexture renderTexture = RenderTexture.GetTemporary(Screen.width, Screen.height, 24); // allocate a temporary rt
         cam.targetTexture = renderTexture;                                                         // set it as the target render texture
         cam.Render();                                                                              // so that it can be rendered by camera
         TakeScreenShot(renderTexture);                                                             // save the render texture to png file
         cam.targetTexture = null;                                                                  // reset the target texture to null
         RenderTexture.ReleaseTemporary(renderTexture);                                             // don't forget to release the memory
     }
     // quilt screenshot input
     if (Input.GetKeyDown(screenshotQuiltKey))
     {
         var previousPreset = quiltPreset;
         quiltPreset = Quilt.Preset.Standard;
         var previousPreviewSettings = preview2D;
         preview2D = false;
         // set up the quilt for taking screens
         var tempQuilt     = RenderTexture.GetTemporary(quiltSettings.quiltWidth, quiltSettings.quiltHeight, 0);
         var previousQuilt = quiltRT;
         quiltRT = tempQuilt;
         LateUpdate();                 // renders the lightfield
         TakeScreenShot(quiltRT);
         // return quilt to normal
         quiltPreset = previousPreset;
         quiltRT     = previousQuilt;
         preview2D   = previousPreviewSettings;
     }
     // debug info
     if (Input.GetKey(KeyCode.RightShift) && Input.GetKeyDown(KeyCode.F8))
     {
         debugInfo = !debugInfo;
     }
     if (Input.GetKeyDown(KeyCode.Escape))
     {
         debugInfo = false;
     }
 }
示例#2
0
 public void SetQuiltPreset(Quilt.Preset preset)
 {
     quiltPreset = preset;
     SetupQuilt();
 }