UnityでScreenshotMovieを作成するスクリプト

Unityで作ったゲームのScreenshotMovieを作成できるスクリプト

ScreenshotMovie – Unify Community Wiki
http://wiki.unity3d.com/index.php/ScreenShotMovie

作成されるファイルはPNG形式の連番画像ファイルになるので、FFmpegや他の動画編集ソフト等で動画に変換してください。

FFmpegで動画ファイルに変換するコマンド例

$ ffmpeg -an -i screenshot.mp4 "shot %04.png"

リンク

ScreenshotMovie – Unify Community Wiki
http://wiki.unity3d.com/index.php/ScreenShotMovie

FFmpeg
http://ffmpeg.org/

GrabPassの使い方

UnityのシェーダーではGrabPassを使うことで、シャーダー内で簡単にスクリーンの絵を取得できて便利です。

使い方は

GrabPass
{
}

と書くだけ。

後は普通のTextureと同じように

sampler2D _GrabTexture
grabPos = ComputeGrabScreenPos(o.pos);
half4 color = tex2Dproj(_GrabTexture, grabPos);

のようにして使えます。

_GrabTextureの名称を変更したい場合は、GrabPass

GrabPass
{
  "_BackgroundTexture"
}

という風に書くと良いようです。

リンク

Unity – Manual: ShaderLab: GrabPass
https://docs.unity3d.com/Manual/SL-GrabPass.html