Version: 2018.2
public static int captureFramerate ;



このプロパティーが 0 以外の値ならフレームの更新がリアルタイムでフレームのレンダリングに必要な時間に関係ないインターバル (1.0/captureFramerate) で発生します。これは一定のフレームレートが必要で、スクリーン画像を保存するためにフレーム間で十分な時間を残してムービーをキャプチャーしたい場合に便利です。

using UnityEngine;
using System.Collections;

// Capture frames as a screenshot sequence. Images are // stored as PNG files in a folder - these can be combined into // a movie using image utility software (eg, QuickTime Pro).

public class ExampleClass : MonoBehaviour { // The folder to contain our screenshots. // If the folder exists we will append numbers to create an empty folder. public string folder = "ScreenshotFolder"; public int frameRate = 25; void Start() { // Set the playback framerate (real time will not relate to game time after this). Time.captureFramerate = frameRate;

// Create the folder System.IO.Directory.CreateDirectory(folder); }

void Update() { // Append filename to folder name (format is '0005 shot.png"') string name = string.Format("{0}/{1:D04} shot.png", folder, Time.frameCount);

// Capture the screenshot to the specified file. ScreenCapture.CaptureScreenshot(name); } }