Can I tell Unity to record a video?

I have an animation where the main camera fly's around the terrain basically showing it off, and I would like to know if I can tell unity to "save" this animation in some video extension that I can upload to my website.

If you want to record Unity's player output, you can use one of two methods:

JPEG Frames

Every frame, simply call CaptureScreenshot and save each file in order. Then, use video editing software to covert each still frame into a video.

External Video Capture

Simply run your scene fullscreen, or at whatever resolution you would like your video to be, and capture it using an external game video recorder. My personal favorite is Fraps.

Be careful, though, some game video recorders record raw, uncompressed output. You'll need to run these through a converter such as Any Video Recorder in order to convert them into a smaller, compressed format.

Why not use Openbroadcaster? It just came out with multi-platform support : https://obsproject.com/

You can target a screen region and record it locally.

Hi,

There’s another option!

We created a video capture plugin for Unity that record from the viewport straight to AVI files on disk. It’s currently Windows only but we hope to fix that soon. The plugin is called AVPro Movie Capture, check out the demo and documentation on the webpage.

-Andrew

Try ScreenRecorder extension , it does video capture on Mac and iOS.

MTS Video Converter is also a versatile MTS to AVI Converter software, which has the ability to convert MTS/M2TS file to AVI video with super high speed and perfect …

It’s a bit awkward to do this for free, especially on a Mac which doesn’t seem to have a good free, screen capture software.
You can use QuickTime on the Mac but the quality is rubbish.

I put a game called Barfly up onto Google Play recently and made a trailer for it.

Here’s what I did, I added a new gameObject into my scene with something like the following code:

using UnityEngine;

using System.Collections;

public class Screenshot : MonoBehaviour {

private int pic = 0;

void Awake(){
	DontDestroyOnLoad (this.gameObject);
}

void Update () {
	if (Input.GetKey(KeyCode.S)){
		Application.CaptureScreenshot("[STORAGELOCATION]/ss_"+pic.ToString() + ".png");
		pic += 1;
	}
}

}

I then made a Mac build of my game and played it a bit, pressing S when I wanted to capture video.

This took a screenshot every game loop which I stitched together into a movie using Blender - see this tutorial Loading...

I converted the output of this into a high quality format using Mac’s own app for conversion (see the Mac app store).
Then used iMovie, which comes with every OSX install, to piece together the individual videos, add music and crossfades etc.

It’s not the perfect solution, but it works ok and is completely free!

Use a screen capture program.

On the Mac you can use Quick Time Player for this, which is very high quality and free.

On the PC the easiest and highest frame rate way is probably using NVidias own screen capture. “Shadowplay”

Hi everyone, This is an old topic, but since I recently needed something like this, I have been researching a bit and I tested Icecream Screen Recorder and OBS, both application look and work well, however I decided to go for Screen Recorder. I set up an area of the game scene, and it only records that area, so I can be working with the editor.