Time.captureFramerate
Time.captureFramerate
Time.captureFramerate,字面意思是捕捉帧率,这个方法可以用来做帧截屏,就是减慢游戏播放时间以允许在帧之间保存屏幕截图,然后通过一些软件来将截图拼接为视频。帧之间的间隔 = 1/time.captureframerate,所以如果设置值为10,则每10分之一秒更新一次。我们可以依此来写一个截取当前场景视窗的小程序:
using UnityEngine; using System.Collections; public class ExampleScript : MonoBehaviour { //存储路径:在项目assets目录下的ScreenshotFolder文件夹内 string folder = "Assets/ScreenshotFolder"; //设定帧率为25 int frameRate = 25; void Start() { // 设置播放帧率 (real time will not relate to game time after this). Time.captureFramerate = frameRate; // 创建文件夹 System.IO.Directory.CreateDirectory(folder); } void Update() { // 设置文件名的格式为:0001 shot.png string name = string.Format("{0}/{1:D04} shot.png", folder, Time.frameCount); // 截图到对应的路径中 ScreenCapture.CaptureScreenshot(name); } }